Intuicyjne wyjaśnienia różnic między drzewami wspomagającymi gradient (GBM) i Adaboost


48

Próbuję zrozumieć różnice między GBM a Adaboost.

Oto, co do tej pory zrozumiałem:

  • Istnieją oba algorytmy przyspieszające, które uczą się na błędach poprzedniego modelu i wreszcie tworzą ważoną sumę modeli.
  • GBM i Adaboost są dość podobne, z wyjątkiem funkcji utraty.

Ale nadal trudno mi zrozumieć różnicę między nimi. Czy ktoś może dać mi intuicyjne wyjaśnienia?

Odpowiedzi:


34

Odkryłem, że to wprowadzenie może dostarczyć intuicyjnych wyjaśnień.

  • W trybie Gradient Boost „niedociągnięcia” (istniejących słabych uczniów) są identyfikowane przez gradienty .
  • W Adaboost „niedociągnięcia” są identyfikowane przez punkty danych o wysokiej wadze .

W moim rozumieniu wykładnicza utrata Adaboost daje więcej wag dla tych próbek, które są gorsze. W każdym razie Adaboost jest uważany za szczególny przypadek wzmocnienia gradientu pod względem funkcji strat, jak pokazano w historii wzmocnienia gradientu przedstawionej we wstępie.

  1. Invent Adaboost, pierwszy udany algorytm wzmacniający [Freund i in., 1996, Freund i Schapire, 1997]
  2. Sformułuj Adaboost jako pochylenie gradientowe ze specjalną funkcją utraty [Breiman i in., 1998, Breiman, 1999]
  3. Uogólnij Adaboost na Gradient Boosting, aby obsłużyć różne funkcje strat [Friedman i in., 2000, Friedman, 2001]

11

Intuicyjne wyjaśnienie algorytmu AdaBoost

Pozwól, że oprę się na doskonałej odpowiedzi @ Randel z ilustracją następującego punktu


  • W Adaboost „niedociągnięcia” są identyfikowane przez punkty danych o wysokiej wadze

Podsumowanie AdaBoost

solm(x) m=1,2),...,M.

sol(x)=znak(α1sol1(x)+α2)sol2)(x)+...αM.solM.(x))=znak(m=1M.αmsolm(x))
  • Ostateczna prognoza jest kombinacją prognoz wszystkich klasyfikatorów poprzez głosowanie większością ważoną

  • αmsolm(x)

  • w1,w2),...,wN.m
  • m=1wja=1/N.

AdaBoost na przykładzie zabawki

M.=10

wprowadź opis zdjęcia tutaj

Wizualizacja sekwencji słabych uczniów i wag próbek

m=1,2 ...,6

wprowadź opis zdjęcia tutaj

Pierwsza iteracja:

  • Granica decyzji jest bardzo prosta (liniowa), ponieważ są to osoby uczące się
  • Wszystkie punkty są tego samego rozmiaru, zgodnie z oczekiwaniami
  • 6 niebieskich punktów znajduje się w czerwonym regionie i są błędnie sklasyfikowane

Druga iteracja:

  • Liniowa granica decyzji uległa zmianie
  • Wcześniej źle sklasyfikowane niebieskie punkty są teraz większe (większa próbka-waga) i wpłynęły na granicę decyzji
  • 9 niebieskich punktów jest teraz błędnie sklasyfikowanych

Ostateczny wynik po 10 iteracjach

αm wynoszą:

([1.041, 0.875, 0.837, 0.781, 1.04, 0.938 ...

Zgodnie z oczekiwaniami, pierwsza iteracja ma największy współczynnik, ponieważ jest to ta z najmniejszą liczbą błędnych klasyfikacji.

Następne kroki

Intuicyjne wyjaśnienie zwiększania gradientu - do uzupełnienia

Źródła i dalsze czytanie:

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.