Gradient Boosting Tree vs Random Forest

110

Zwiększanie drzewa gradientowego, jak zaproponował Friedman, wykorzystuje drzewa decyzyjne jako podstawowych uczniów. Zastanawiam się, czy powinniśmy uczynić podstawowe drzewo decyzyjne tak złożonym, jak to możliwe (w pełni rozwinięte) czy prostszym? Czy istnieje jakieś wyjaśnienie wyboru?

Random Forest to kolejna metoda zespołowa, w której drzewa decyzyjne są podstawowymi uczniami. W oparciu o moje zrozumienie używamy prawie w pełni dojrzałych drzew decyzyjnych w każdej iteracji. Czy mam rację?

FihopZz
źródło
1
Kolejne bardzo dobre referencje dotyczące drzew wzmocnionych można znaleźć tutaj: xgboost.readthedocs.io/en/latest/model.html
Naghmeh
@Naghmeh - Dead link; wydaje się, że został przeniesiony do xgboost.readthedocs.io/en/latest/tutorials/model.html
mlibby

Odpowiedzi:

149

błąd = odchylenie + wariancja

  • Wzmocnienie opiera się na słabych uczniach (wysoka stronniczość, niska wariancja). Pod względem drzew decyzyjnych słabi uczniowie są płytkimi drzewami, czasem nawet tak małymi jak pnie decyzyjne (drzewa z dwoma liśćmi). Wzmocnienie zmniejsza błąd głównie poprzez zmniejszenie uprzedzeń (a także do pewnego stopnia wariancji poprzez agregację wyników z wielu modeli).
  • Z drugiej strony, Random Forest używa, jak powiedziałeś, w pełni dojrzałych drzew decyzyjnych (niskie odchylenie, duża wariancja). Podejmuje się zadanie redukcji błędów w odwrotny sposób: zmniejszając wariancję. Drzewa są nieskorelowane, aby zmaksymalizować spadek wariancji, ale algorytm nie może zmniejszyć obciążenia (które jest nieco wyższe niż obciążenie pojedynczego drzewa w lesie). Stąd potrzeba dużych, nie przycinanych drzew, aby początkowe odchylenie było możliwie jak najniższe.

Należy pamiętać, że w przeciwieństwie do wzmocnienia (które jest sekwencyjne), RF rośnie drzewa równolegle . iterativeUżyty termin jest zatem niewłaściwy.

Antoine
źródło
1
„Drzewa stają się nieskorelowane, aby zmaksymalizować zmniejszenie wariancji, ale algorytm nie może zmniejszyć obciążenia (które jest nieco wyższe niż obciążenie pojedynczego drzewa w lesie)” - część o „nieco większym niż obciążenie jednostki drzewo w lesie ”wydaje się niepoprawny. Zobacz web.stanford.edu/~hastie/Papers/ESLII.pdf sekcja 15.4.2: „Podobnie jak w workowaniu, stronniczość przypadkowego lasu jest taka sama jak stronniczości każdego z poszczególnych próbkowanych drzew”. Może masz na myśli „nieco wyższy niż uprzedzenie pojedynczego, w pełni dorosłego drzewa, które pasuje do oryginalnych danych”?
Adrian
1
@gung Myślę, że w OP jest kluczowe pytanie, na które nie ma odpowiedzi, a mianowicie: dlaczego nie użyć w pełni dojrzałego drzewa na pierwszym etapie GBM? Dlaczego użycie sekwencji słabego ucznia jest lepsze niż jedno w pełni dorosłe drzewo? Jestem tego ciekawy
ftxx,
55

To pytanie znajduje się w tym bardzo ładnym poście. Proszę spojrzeć na to i odnośniki w nim zawarte. http://fastml.com/what-is-better-gradient-boosted-trees-or-random-forest/

Zauważ w artykule, że mówi o kalibracji, i linki do innego (fajnego) posta na blogu na ten temat. Mimo to uważam, że artykuł Uzyskiwanie skalibrowanych prawdopodobieństw na podstawie doładowania pozwala lepiej zrozumieć, czym jest kalibracja w kontekście wzmocnionych klasyfikatorów i jakie są standardowe metody jej przeprowadzania.

I wreszcie brakuje jednego aspektu (nieco bardziej teoretycznego). Zarówno RF, jak i GBM są metodami złożonymi, co oznacza, że ​​budujesz klasyfikator z dużej liczby mniejszych klasyfikatorów. Podstawowa różnica polega teraz na zastosowanej metodzie:

  1. RF wykorzystuje drzewa decyzyjne, które są bardzo podatne na nadmierne dopasowanie. Aby osiągnąć wyższą dokładność, RF decyduje się na stworzenie dużej ich liczby na podstawie workowania . Podstawową ideą jest ciągłe ponowne próbkowanie danych i dla każdej próbki wytrenuj nowy klasyfikator. Różni klasyfikatorzy dopasowują dane w inny sposób, a podczas głosowania różnice te są uśredniane.
  2. GBM to metoda wzmacniająca, która opiera się na słabych klasyfikatorach . Chodzi o to, aby dodać klasyfikator na raz, aby następny klasyfikator był szkolony w celu poprawy już wyszkolonego zespołu. Zauważ, że dla każdej iteracji RF klasyfikator jest szkolony niezależnie od reszty.
jpmuc
źródło
3
Czy z twojej odpowiedzi wynikałoby uczciwe zakończenie, że RF przewyższa więcej niż GBM?
8forty
4
@ 8forty Nie wyciągnę tego wniosku - podczas gdy pojedyncze drzewo w RF przewyższy więcej niż jedno drzewo w GBM (ponieważ są one znacznie mniejsze), w RF te przełożenie zostanie uśrednione przy zatrudnieniu wielu drzew, podczas gdy GBM im więcej drzew dodasz, tym większe ryzyko nadmiernego dopasowania. Krótko mówiąc, ponieważ N (liczba użytych drzew) przechodzi w nieskończoność, spodziewam się, że RF będzie o wiele mniejszy niż GBM
Ant