Tworzenie solidnych modeli AI za pomocą pakowania: techniki, korzyści i zastosowania
Opublikowany: 2025-01-09Bagging to zespołowa technika uczenia maszynowego (ML), która poprawia spójność modeli predykcyjnych. W tym przewodniku opisano działanie workowania, omówiono jego zalety, wyzwania i zastosowania, a także porównano je z pokrewnymi technikami, takimi jak wzmacnianie.
Spis treści
- Co to jest pakowanie?
- Wariancja a stronniczość
- Pakowanie a wzmacnianie
- Jak działa pakowanie
- Rodzaje algorytmów pakowania
- Zastosowania workowania
- Zalety pakowania
- Wyzwania i ograniczenia workowania
Co to jest pakowanie?
Pakowanie (lub bardziej formalnie regowanieagregacjipoczątkowej) to technika uczenia się zespołowego, która poprawia dokładność wyników dzięki zastosowaniu wielu podobnych modeli uczenia maszynowego. W swojej istocie uczenie zespołowe łączy kilka modeli, aby osiągnąć lepszą wydajność niż jakikolwiek indywidualny model.
Podejście to polega na podzieleniu danych uczących na losowe podzbiory i uczeniu na każdym z nich innego modelu. W przypadku nowych danych wejściowych prognozy ze wszystkich modeli są agregowane w celu uzyskania ostatecznego wyniku. Wykorzystując losowe podzbiory, technika ta zmniejsza rozbieżności między modelami, co skutkuje bardziej spójnymi przewidywaniami.
Pakowanie jest szczególnie skuteczne w poprawianiu spójności poprzez minimalizowanie wariancji systemu ML.
Wariancja a stronniczość
Zmniejszanie błędu systematycznego i wariancji to podstawowe cele każdego modelu lub systemu uczenia maszynowego.
Odchylenie opisuje błędy, jakie popełnia system uczenia maszynowego na skutek założeń dotyczących danych, które widzi. Zwykle określa się to poprzez obliczenie, jak średnio błędny jest model. Wariancja mierzy spójność modelu. Szacuje się go, sprawdzając, jak różne są wyniki modelu dla podobnych danych wejściowych.
Wysoka stronniczość
Jako przykład rozważmy problem przewidywania ceny sprzedaży domu na podstawie jego cech (takich jak powierzchnia i liczba sypialni). Prosty model może przyjąć wiele upraszczających założeń i uwzględniać jedynie powierzchnię kwadratową, co powoduje duże odchylenie. Będzie stale popełniał błędy, nawet w przypadku danych treningowych, ponieważ rzeczywistość jest bardziej skomplikowana niż jej założenia. Dlatego nie jest w stanie uwzględnić rzeczywistych czynników prognostycznych cen (takich jak lokalizacja, jakość szkoły i liczba pokoi).
Wysoka wariancja
Bardziej złożony model może wychwycićkażdytrend w danych szkoleniowych i charakteryzować się dużą wariancją. Na przykład model ten może znaleźć w danych szkoleniowych niewielką korelację między numerem domu (zasadniczo numeryczną częścią adresu) a ceną i wykorzystać ją, mimo że nie jest to rzeczywisty predyktor. Dobrze sobie poradzi na danych treningowych, ale słabo na danych rzeczywistych.
Kompromis wariancji i odchylenia
Idealny model miałby niskie obciążenie i niską wariancję, generując konsekwentnie prawidłowe wyniki na podobnych danych wejściowych. Wysokie obciążenie zwykle wynika z tego, że model jest zbyt prosty, aby uchwycić wzorce z danych uczących – jest to niedopasowanie. Duża wariancja wynika zwykle z przechwytywania przez model fałszywych wzorców w danych uczących – nadmiernego dopasowania.
Zwiększanie stopnia zaawansowania modelu może pozwolić mu na uchwycenie większej liczby wzorców, co prowadzi do mniejszego obciążenia. Jednak ten bardziej wyrafinowany model będzie miał tendencję do nadmiernego dopasowania danych uczących, co prowadzi do większej wariancji i odwrotnie. W praktyce trudno jest osiągnąć dobrze wyważony kompromis pomiędzy odchyleniem a wariancją.
Pakowanie koncentruje się na zmniejszaniu wariancji. Każdy model w zestawie może charakteryzować się dużą wariancją, ponieważ przekracza swój zbiór danych. Ponieważ jednak każdy model otrzymuje losowy zbiór danych, odkryją różne fałszywe wzorce. W przykładzie z cenami domów jeden model może przeceniać domy o parzystych liczbach, inny może je zaniżać, a większość może całkowicie ignorować numery domów.
Te arbitralne wzorce mają tendencję do uśredniania się, gdy uśredniamy ich przewidywania, pozostawiając nam prawdziwe zależności leżące u ich podstaw. W ten sposób zespół osiąga mniejszą wariancję i zmniejszone nadmierne dopasowanie w porównaniu z dowolnym indywidualnym modelem.
Pakowanie a wzmacnianie
Możesz usłyszeć, jak mówi się o pakowaniu w tym samym kontekście, co o wzmacnianiu. Są to najczęstsze techniki uczenia się zespołowego, które stanowią podstawę wielu popularnych modeli uczenia maszynowego. Boosting to technika, w której modele są szkolone na błędach poprzednich modeli. Następnie ta grupa modeli służy do reagowania na dowolne wejścia. Omówmy dalej różnice między tymi dwiema technikami.
Parcianka | Wzmocnienie | |
Trening modelowy | Modele są trenowane równolegle na różnych podzbiorach danych | Modele są uczone sekwencyjnie, przy czym każdy model koncentruje się na błędach poprzedniego modelu |
Fokus redukcji błędów | Zmniejsza wariancję | Zmniejsza stronniczość |
Wspólne algorytmy | Losowy las, zapakowane drzewa decyzyjne | AdaBoost, wzmacnianie gradientu, XGBoost |
Ryzyko przeuczenia | Mniejsze ryzyko nadmiernego dopasowania dzięki losowemu pobieraniu próbek | Większe ryzyko nadmiernego dopasowania |
Złożoność obliczeniowa | Niżej | Wyższy |
Obie techniki są powszechne, chociaż wzmacnianie jest bardziej popularne. Wzmocnienie może zmniejszyć zarówno odchylenie,jak iwariancję, podczas gdy pakowanie zwykle wpływa tylko na wariancję.
Jak działa pakowanie
Zastanówmy się, jak faktycznie działa pakowanie. Istotą jest losowe podzielenie danych uczących, równoległe trenowanie modeli na podzielonych danych i wykorzystanie wszystkich modeli do reagowania na dane wejściowe. Zajmiemy się każdym z nich po kolei.
Podział danych
Załóżmy, że mamy zbiór danych szkoleniowych składający się znpunktów danych i chcemy utworzyć zbiórmmodeli. Następnie musimy utworzyćmzbiorów danych (po jednym dla każdego modelu), każdy znpunktami. Jeśli w każdym zbiorze danych znajduje się więcej lub mniej niżnpunktów, niektóre modele będą przetrenowane lub niedostatecznie przeszkolone.
Aby utworzyć pojedynczy nowy losowy zbiór danych, losowo wybieramynpunktów z oryginalnego zbioru uczącego. Co ważne, po każdej selekcji zwracamy punkty do oryginalnego zbioru danych. W rezultacie nowy losowy zbiór danych będzie zawierał więcej niż jedną kopię niektórych oryginalnych punktów danych, a pozostałych nie będzie miał żadnych. Średnio ten zbiór danych będzie składał się z 63% unikalnych punktów danych i 37% zduplikowanych punktów danych.
Następnie powtarzamy ten proces, aby utworzyć wszystkiemzbiory danych. Różnice w reprezentacji punktów danych pomagają stworzyć różnorodność modeli zespołowych, co jest jednym z kluczy do ogólnego zmniejszenia wariancji.
Trening modelowy
Dzięki naszymmlosowym zbiorom danych po prostu szkolimymmodeli, po jednym modelu dla każdego zbioru danych. Powinniśmy używać tego samego rodzaju modelu w całym tekście, aby zapewnić podobne uprzedzenia. Modele możemy trenować równolegle, co pozwala na znacznie szybszą iterację.
Modele agregujące
Teraz, gdy mamyjużwytrenowane modele, możemy użyć ich jako zestawu, aby odpowiedzieć na dowolne dane wejściowe. Każdy wejściowy punkt danych jest zasilany równolegle do każdego z modeli, a każdy model odpowiada swoim wyjściem. Następnie agregujemy wyniki modeli, aby uzyskać ostateczną odpowiedź. Jeśli jest to problem klasyfikacji, bierzemy tryb wyjść (najczęstsze wyjście). Jeśli jest to problem regresji, bierzemy średnią wyników.
Kluczem do ograniczenia wariancji jest to, że każdy model jest lepszy w przypadku niektórych rodzajów danych wejściowych, a gorszy w innych ze względu na różnice w danych uczących. Jednak ogólnie rzecz biorąc, błędy jednego modelu powinny zostać zniesione przez inne modele, co prowadzi do mniejszej wariancji.
Rodzaje algorytmów workowania
Bagażowanie jako algorytm można zastosować do dowolnego typu modelu. W praktyce bardzo popularne są dwa modele worków: lasy losowe i drzewa decyzyjne worków. Przyjrzyjmy się pokrótce obydwom.
Losowe lasy
Losowy las to zbiór drzew decyzyjnych, z których każde jest trenowane na losowych zbiorach danych. Drzewo decyzyjne to model, który dokonuje prognoz, odpowiadając na pytania „tak/nie” dotyczące danych wejściowych, aż do znalezienia odpowiedniej etykiety.
W lesie losowym każde drzewo decyzyjne ma te same hiperparametry — wstępnie ustawione konfiguracje, takie jak maksymalna głębokość drzewa lub minimalna liczba próbek na podział — ale wykorzystuje inne (wybrane losowo) funkcje ze zbioru danych szkoleniowych. Bez randomizacji cech każde drzewo decyzyjne może prowadzić do podobnych odpowiedzi pomimo różnic w danych szkoleniowych. Lasy losowe są niezwykle popularnym wyborem w przypadku uczenia maszynowego i często stanowią dobry punkt wyjścia do rozwiązywania zadań uczenia maszynowego.
Workowane drzewa decyzyjne
Workowane drzewa decyzyjne są bardzo podobne do lasów losowych, z tą różnicą, że każde drzewo korzysta z tych samych funkcji ze zbioru danych szkoleniowych. Zmniejsza to różnorodność wyników uzyskiwanych z drzew, co ma zalety i wady. Zaletą jest to, że drzewa są bardziej stabilne i prawdopodobnie dadzą podobne odpowiedzi; można to wykorzystać do określenia, które funkcje są ważne. Wadą jest to, że wariancja nie zostanie zmniejszona tak bardzo. Z tego powodu lasy losowe są wykorzystywane znacznie częściej niż drzewa decyzyjne w workach.
Zastosowania workowania
Bagażowanie można zastosować w każdym problemie ML, w którym wariancja jest większa niż pożądana. Dopóki istnieje model ML, można go spakować. Aby było to bardziej konkretne, przeanalizujemy kilka przykładów.
Klasyfikacja i regresja
Klasyfikacja i regresja to dwa podstawowe problemy uczenia maszynowego. Użytkownik może chcieć oznaczyć obiekt obrazu jako kot lub pies – klasyfikacja. Lub użytkownik może chcieć przewidzieć cenę sprzedaży domu na podstawie jego cech — regresji. Jak widzieliśmy, pakowanie może pomóc w zmniejszeniu wariancji w obu przypadkach.
W klasyfikacji wykorzystuje się tryb modeli zespolonych. W regresji używa się średniej.
Wybór funkcji
Wybór funkcji polega na znalezieniu najważniejszych cech w zbiorze danych — tych, które najlepiej przewidują prawidłowe wyniki. Usuwając nieistotne dane cech, twórca modelu może zmniejszyć ryzyko nadmiernego dopasowania.
Znajomość najważniejszych funkcji może również ułatwić interpretację modeli. Ponadto twórcy modeli mogą wykorzystać tę wiedzę do zmniejszenia liczby funkcji w danych szkoleniowych, co prowadzi do szybszego uczenia. Opakowane drzewa decyzyjne sprawdzają się dobrze przy odkrywaniu ważnych funkcji. Cechy, które są w nich mocno obciążone, będą prawdopodobnie tymi ważnymi.
Bagażowanie w handlu elektronicznym
Bagowanie w handlu elektronicznym jest szczególnie cenne w przewidywaniu odejścia klientów. Modele uczenia maszynowego trenowane na danych dotyczących rezygnacji często charakteryzują się dużą wariancją ze względu na złożone, hałaśliwe wzorce zachowań klientów; mogą przesadzić ze swoim zbiorem danych szkoleniowych. Mogą również wywnioskować fałszywe powiązania, na przykład założenie, że liczba samogłosek w imieniu klienta wpływa na prawdopodobieństwo jego odejścia.
Zbiór danych szkoleniowych może zawierać tylko kilka przykładów powodujących nadmierne dopasowanie. Korzystając z modeli workowych, zespół może lepiej zidentyfikować rzeczywiste wskaźniki rezygnacji, ignorując fałszywe korelacje, co prowadzi do bardziej wiarygodnych prognoz rezygnacji.
Zalety pakowania
Pakowanie zmniejsza wariancję modelu i nadmierne dopasowanie oraz może pomóc w przypadku problemów z danymi. Jest to również jedna z najbardziej równoległych i wydajnych technik pakowania.
Zmniejszona wariancja
Wariancja modelu wskazuje, że model nie uczy się prawdziwych, znaczących wzorców danych. Zamiast tego wychwytuje przypadkowe korelacje, które nie mają większego znaczenia i są objawem niedoskonałych danych szkoleniowych.
Workowanie zmniejsza różnorodność modeli; zespół jako całość skupia się na znaczących relacjach pomiędzy wejściem i wyjściem.
Dobrze generalizuj na nowych danych
Ponieważ modele workowe z większym prawdopodobieństwem wychwytują znaczące relacje, mogą uogólniać na nowe lub niewidoczne dane. Dobra generalizacja jest ostatecznym celem uczenia maszynowego, dlatego pakowanie jest często przydatną techniką w wielu modelach.
W prawie każdym problemie uczenia maszynowego zbiór danych szkoleniowych nie jest w pełni reprezentatywny dla rzeczywistych danych, dlatego kluczem jest dobre uogólnienie. W innych przypadkach prawdziwy rozkład danych może zmieniać się w czasie, dlatego niezbędny jest model, który można dostosować. Pakowanie pomaga w obu przypadkach.
Wysoce zrównoleglona
W przeciwieństwie do wzmacniania, tworzenie modeli workowanych można w dużym stopniu zrównoleglić. Każdy model można trenować niezależnie i jednocześnie, co pozwala na szybkie eksperymentowanie i łatwiejsze dostrajanie hiperparametrów (oczywiście pod warunkiem, że masz wystarczające zasoby obliczeniowe do równoległego uczenia).
Dodatkowo, ponieważ każdy model jest niezależny od pozostałych, można go zamieniać lub wymieniać. Na przykład słaby model można przeszkolić w innym losowym podzbiorze, aby poprawić jego wydajność bez dotykania innych modeli.
Wyzwania i ograniczenia workowania
Niestety dodanie większej liczby modeli zwiększa złożoność. Wyzwania związane z dodatkową złożonością oznaczają, że modele workowe wymagają znacznie więcej zasobów obliczeniowych, są trudniejsze do interpretacji i zrozumienia oraz wymagają większego dostrajania hiperparametrów.
Potrzebne więcej zasobów obliczeniowych
Więcej modeli wymaga więcej zasobów, aby je uruchomić, a często zestawy workowe obejmują ponad 50 modeli. Może to działać dobrze w przypadku mniejszych modeli, ale w przypadku większych może stać się trudne.
Czasy reakcji zespołu również mogą ucierpieć w miarę jego wzrostu. Zasoby mają również koszt alternatywny: można je lepiej wykorzystać do szkolenia większego, lepszego modelu.
Trudniejsze do interpretacji
Modele ML jako całość są trudne do interpretacji. Indywidualne drzewa decyzyjne są nieco łatwiejsze, ponieważ pokazują, na jakich cechach opierają się decyzje. Ale kiedy zgrupujesz ich razem, jak w losowym lesie, sprzeczne odpowiedzi z każdego drzewa mogą być mylące.
Przyjęcie trybu lub średniej przewidywań samo w sobie nie wyjaśnia, dlaczego jest to prawidłowe przewidywanie. Mądrość tłumu, choć często słuszna, jest trudna do zrozumienia.
Więcej dostrajania hiperparametrów
W przypadku większej liczby modeli działanie hiperparametrów jest spotęgowane. Jeden niewielki błąd w hiperparametrach może teraz mieć wpływ na dziesiątki lub setki modeli. Dostrajanie tego samego zestawu hiperparametrów wymaga więcej czasu, co może jeszcze bardziej obciążyć ograniczone zasoby.