Agregacja Bootstrap — Bootstrap aggregating
Część serii na |
Uczenie maszynowe i eksploracja danych |
---|
Bootstrap agregację , zwany również pakująca (z b ootstrap agg Regat ie ) jest maszyna uczenia obsady meta algorytm mający na celu poprawę stabilności i dokładności maszyny uczenia algorytmów używanych w klasyfikacji statystycznej i regresji . Zmniejsza również wariancję i pomaga uniknąć nadmiernego dopasowania . Chociaż zwykle stosuje się go do metod drzew decyzyjnych , można go używać z dowolnym typem metody. Bagging jest szczególnym przypadkiem podejścia uśredniania modelu .
Opis techniki
Przy danym standardowym zbiorze uczącym o rozmiarze n , pakietowanie generuje m nowych zbiorów uczących , każdy o rozmiarze n′ , przez jednorodne próbkowanie z D i zastępowanie . Pobierając próbki z wymianą, niektóre obserwacje można powtórzyć w każdym . Jeśli n ' = n , a następnie na dużą n zestaw oczekuje się, że część (1 - 1 / e ) (≈63.2%) unikalnych przykłady D , reszta jest dwukrotnie. Ten rodzaj próbki jest znany jako próbka bootstrap . Próbkowanie z wymianą zapewnia, że każdy bootstrap jest niezależny od swoich odpowiedników, ponieważ nie jest zależny od poprzednio wybranych próbek podczas próbkowania. Następnie m modeli dopasowuje się przy użyciu powyższych m próbek bootstrap i łączy przez uśrednienie danych wyjściowych (dla regresji) lub głosowanie (dla klasyfikacji).
Bagging prowadzi do „ulepszeń dla niestabilnych procedur”, które obejmują na przykład sztuczne sieci neuronowe , drzewa klasyfikacji i regresji oraz selekcję podzbiorów w regresji liniowej . Wykazano, że pakowanie poprawia uczenie się przedobrazowania. Z drugiej strony może nieznacznie obniżyć wydajność stabilnych metod, takich jak K-najbliżsi sąsiedzi.
Proces algorytmu
Oryginalny zbiór danych
Oryginalny zbiór danych zawiera kilka wpisów próbek od s1 do s5. Każda próbka ma pięć cech (Gene 1 do Gene 5). Wszystkie próbki są oznaczone jako Tak lub Nie w przypadku problemu z klasyfikacją.
Próbki | Gen 1 | Gen 2 | Gen 3 | Gen 4 | Gene 5 | Wynik |
---|---|---|---|---|---|---|
s1 | 1 | 0 | 1 | 0 | 0 | Nie |
s2 | 1 | 0 | 0 | 0 | 1 | Nie |
s3 | 0 | 1 | 1 | 0 | 1 | tak |
s4 | 1 | 1 | 1 | 0 | 1 | tak |
s5 | 0 | 0 | 0 | 1 | 1 | Nie |
Tworzenie bootstrapowanych zbiorów danych
Biorąc pod uwagę powyższą tabelę, aby sklasyfikować nową próbkę, najpierw należy utworzyć początkowy zestaw danych przy użyciu danych z oryginalnego zestawu danych. Ten początkowy zestaw danych ma zazwyczaj rozmiar oryginalnego zestawu danych lub mniejszy.
W tym przykładzie rozmiar to pięć (od s1 do s5). Zestaw danych początkowych jest tworzony przez losowe wybieranie próbek z oryginalnego zestawu danych. Dozwolone są powtarzające się wybory. Wszelkie próbki, które nie zostały wybrane do zestawu danych początkowego, są umieszczane w oddzielnym zestawie danych zwanym zestawem danych poza workiem.
Zobacz przykładowy zestaw danych początkowych poniżej. Ma pięć wpisów (taki sam rozmiar jak oryginalny zbiór danych). Istnieją zduplikowane wpisy, takie jak dwa s3, ponieważ wpisy są wybierane losowo z zamianą.
Próbki | Gen 1 | Gen 2 | Gen 3 | Gen 4 | Gene 5 | Wynik |
---|---|---|---|---|---|---|
s1 | 1 | 0 | 1 | 0 | 0 | Nie |
s3 | 0 | 1 | 1 | 0 | 1 | tak |
s2 | 1 | 0 | 0 | 0 | 1 | Nie |
s3 | 0 | 1 | 1 | 0 | 1 | tak |
s4 | 1 | 1 | 1 | 0 | 1 | tak |
Ten krok zostanie powtórzony, aby wygenerować m zestawów danych z rozruchem początkowym.
Tworzenie drzew decyzyjnych
Drzewo decyzyjne jest tworzone dla każdego początkowego zestawu danych przy użyciu losowo wybranych wartości kolumn do podziału węzłów.
Przewidywanie przy użyciu wielu drzew decyzyjnych
Gdy do tabeli zostanie dodana nowa próbka, początkowy zestaw danych jest używany do określenia wartości klasyfikatora nowego wpisu.
Nowa próbka jest testowana w losowym lesie utworzonym przez każdy ładowany zestaw danych, a każde drzewo generuje wartość klasyfikatora dla nowej próbki. Do klasyfikacji stosuje się proces zwany głosowaniem, aby określić ostateczny wynik, gdzie wynik najczęściej uzyskiwany przez losowy las jest wynikiem podanym dla próbki. W przypadku regresji próbie przypisuje się średnią wartość klasyfikatora wytworzoną przez drzewa.
Po przetestowaniu próbki w losowym lesie wartość klasyfikatora jest przypisywana do próbki i dodawana do tabeli.
Algorytm (klasyfikacja)
Do klasyfikacji użyj zestawu uczącego , Induktora i liczby próbek ładowania początkowego jako danych wejściowych. Wygeneruj klasyfikator jako wynik
- Twórz nowe zestawy treningowe , z zastępstwem
- Klasyfikator jest budowany z każdego zestawu przy użyciu do określenia klasyfikacji zestawu
- Wreszcie klasyfikator jest generowany przy użyciu wcześniej utworzonego zbioru klasyfikatorów na pierwotnym zbiorze danych , klasyfikacja przewidywana najczęściej przez podklasyfikatory jest klasyfikacją końcową
for i = 1 to m { D' = bootstrap sample from D (sample with replacement) Ci = I(D') } C*(x) = argmax Σ 1 (most often predicted label y) y∈Y i:Ci(x)=y
Przykład: dane ozonu
Aby zilustrować podstawowe zasady workowania, poniżej znajduje się analiza związku między ozonem a temperaturą (dane Rousseeuw i Leroy (1986), analiza wykonana w R ).
Zależność między temperaturą a ozonem wydaje się być nieliniowa w tym zestawie danych, na podstawie wykresu punktowego. Aby matematycznie opisać tę zależność, używane są wygładzacze LOESS (o przepustowości 0,5). Zamiast budować jeden gładszy dla całego zestawu danych, narysowano 100 próbek bootstrap . Każda próbka składa się z losowego podzbioru oryginalnych danych i zachowuje podobieństwo rozkładu i zmienności zbioru głównego. Do każdej próbki bootstrap pasował wygładzacz LOESS. Prognozy z tych 100 wygładzających zostały następnie wykonane w całym zakresie danych. Czarne linie reprezentują te wstępne przewidywania. Linie nie zgadzają się w swoich przewidywaniach i mają tendencję do nadmiernego dopasowania punktów danych, co widać po chwiejnym przepływie linii.
Biorąc średnią ze 100 elementów wygładzających, z których każdy odpowiada podzbiorowi oryginalnego zestawu danych, otrzymujemy jeden predyktor w workach (czerwona linia). Przepływ czerwonej linii jest stabilny i nie jest nadmiernie zgodny z żadnymi punktami danych.
Zalety i wady
Zalety:
- Wielu słabych uczniów zagregowanych zazwyczaj osiąga lepsze wyniki niż jednego uczącego się w całym zestawie i ma mniej nadużycia
- Usuwa wariancję u słabego ucznia o wysokiej wariancji i niskim odchyleniu
- Może być wykonywany równolegle , ponieważ każdy oddzielny bootstrap może być przetwarzany samodzielnie przed połączeniem
Niedogodności:
- W przypadku słabego ucznia z wysokim odchyleniem, bagging również przeniesie wysokie odchylenia do swojej sumy
- Utrata interpretacji modelu.
- Może być kosztowny obliczeniowo w zależności od zestawu danych
Historia
Koncepcja agregacji bootstrap wywodzi się z koncepcji bootstrappingu opracowanej przez Bradleya Efrona. Bootstrap agregowania została zaproponowana przez Leo Breiman który również ukuł skrócone określenie „pakowanie” ( b ootstrap agg Regat ing ). Breiman opracował koncepcję workowania w 1994 roku, aby poprawić klasyfikację poprzez połączenie klasyfikacji losowo generowanych zestawów treningowych. Argumentował: „Jeśli zakłócenie zbioru uczącego może spowodować znaczące zmiany w skonstruowanym predyktorze, to workowanie może poprawić dokładność”.
Zobacz też
- Wzmocnienie (metaalgorytm)
- Bootstrapping (statystyki)
- Weryfikacja krzyżowa (statystyki)
- Błąd braku worka
- Losowy las
- Metoda losowej podprzestrzeni (pakowanie atrybutów)
- Ponowna próbka efektywnej granicy
- Analiza predykcyjna: drzewa klasyfikacyjne i regresyjne
Bibliografia
Dalsza lektura
- Breiman, Lew (1996). „Predyktory workowania”. Uczenie maszynowe . 24 (2): 123–140. CiteSeerX 10.1.1.32.9399 . doi : 10.1007/BF00058655 . S2CID 47328136 .
-
Alfaro, E., Gámez, M. i García, N. (2012). „adabag: pakiet R do klasyfikacji z AdaBoost.M1, AdaBoost-SAMME i Bagging” . Cytowanie dziennika wymaga
|journal=
( pomoc ) - Kotsiantis, Sotiris (2014). „Warianty workowania i wzmacniania do rozwiązywania problemów klasyfikacji: ankieta”. Wiedza inż. Przegląd . 29 (1): 78–100. doi : 10.1017/S0269888913000313 .
- Boehmkego, Bradleya; Greenwell, Brandon (2019). "Parcianka". Praktyczne uczenie maszynowe z R . Chapmana i Halla. s. 191-202. Numer ISBN 978-1-138-49568-5.