Drzewa decyzyjne wydają się być bardzo zrozumiałą metodą uczenia maszynowego. Raz utworzony może być łatwo sprawdzony przez człowieka, co jest wielką zaletą w niektórych aplikacjach.
Jakie są praktyczne słabe strony drzew decyzyjnych?
źródło
Drzewa decyzyjne wydają się być bardzo zrozumiałą metodą uczenia maszynowego. Raz utworzony może być łatwo sprawdzony przez człowieka, co jest wielką zaletą w niektórych aplikacjach.
Jakie są praktyczne słabe strony drzew decyzyjnych?
Oto kilka, o których mogę myśleć:
Niektóre z nich są związane z problemem wielokoliniowości : gdy dwie zmienne wyjaśniają to samo, drzewo decyzyjne zachłannie wybierze najlepszą, podczas gdy wiele innych metod użyje ich obu. Metody złożone, takie jak losowe lasy, mogą do pewnego stopnia temu zaprzeczyć, ale tracisz łatwość zrozumienia.
Jednak największym problemem, przynajmniej z mojego punktu widzenia, jest brak zasadniczych ram probabilistycznych. Wiele innych metod ma między innymi przedziały ufności, rozkłady tylne itp., Które dają nam pojęcie o tym, jak dobry jest model. Drzewo decyzyjne jest ostatecznie heurystyką ad hoc, która może być nadal bardzo przydatna (doskonale nadają się do wyszukiwania źródeł błędów w przetwarzaniu danych), ale istnieje niebezpieczeństwo, że ludzie będą traktować dane wyjściowe jako „poprawny” model (z mojego doświadczenie, to się często zdarza w marketingu).
Jedną wadą jest to, że zakłada się, że wszystkie warunki współdziałają. Oznacza to, że nie można mieć dwóch zmiennych objaśniających, które zachowują się niezależnie. Każda zmienna w drzewie jest zmuszona do interakcji z każdą zmienną w górę drzewa. Jest to wyjątkowo nieefektywne, jeśli istnieją zmienne, które nie mają interakcji lub są słabe.
źródło
Moja odpowiedź jest skierowana do CART (implementacje C 4.5 / C 5), choć nie sądzę, że są ograniczone do tego. Domyślam się, że właśnie to ma na myśli PO - zwykle to, co ktoś ma na myśli, mówiąc „Drzewo decyzyjne”.
Ograniczenia drzew decyzyjnych :
Niska wydajność
Przez „wydajność” nie rozumiem rozdzielczości, ale szybkość wykonania . Powodem tego jest to, że trzeba „przerysować drzewo” za każdym razem, gdy chcesz zaktualizować swój model CART - dane sklasyfikowane przez już wyszkolone Drzewo, które następnie chcesz dodać do Drzewa (tj. Użyć jako punkt danych treningowych) wymaga, aby zacząć od początku - instancji treningowych nie można dodawać przyrostowo, tak jak w przypadku większości innych nadzorowanych algorytmów uczenia się. Być może najlepszym sposobem na stwierdzenie tego jest to, że drzew decyzyjnych nie można trenować w trybie online, a tylko w trybie wsadowym. Oczywiście nie zauważysz tego ograniczenia, jeśli nie zaktualizujesz klasyfikatora, ale wtedy spodziewam się spadku rozdzielczości.
Jest to istotne, ponieważ na przykład w przypadku Perceptronów wielowarstwowych, po ich przeszkoleniu, może zacząć klasyfikować dane; dane te mogą być również wykorzystane do „dostrojenia” już wyszkolonego klasyfikatora, chociaż w drzewach decyzyjnych należy przekwalifikować cały zestaw danych (oryginalne dane wykorzystane w szkoleniu plus wszelkie nowe instancje).
Słaba rozdzielczość danych ze złożonymi relacjami między zmiennymi
Drzewa decyzyjne klasyfikuje się poprzez stopniową ocenę punktu danych nieznanej klasy, pojedynczego węzła na raz, zaczynając od węzła głównego i kończąc na węźle końcowym. I w każdym węźle możliwe są tylko dwie możliwości (lewo-prawo), stąd istnieją pewne zmienne relacje, których drzewa decyzyjne po prostu nie mogą się nauczyć.
Praktycznie ograniczony do klasyfikacji
Drzewa decyzyjne działają najlepiej, gdy zostaną przeszkolone w zakresie przypisywania punktu danych do klasy - najlepiej jednej z niewielu możliwych klas. Nie sądzę, że kiedykolwiek miałem jakikolwiek sukces przy użyciu drzewa decyzyjnego w trybie regresji (tj. Ciągłej produkcji, takiej jak cena lub oczekiwany przychód w całym okresie życia). Nie jest to ograniczenie formalne ani nieodłączne, ale praktyczne. Przez większość czasu drzewa decyzyjne są wykorzystywane do przewidywania czynników lub dyskretnych wyników.
Niska rozdzielczość przy zmiennych ciągłych oczekiwaniach
Ponownie, w zasadzie, dobrze jest mieć niezależne zmienne, takie jak „czas pobierania” lub „liczba dni od poprzedniego zakupu online” - wystarczy zmienić kryterium podziału na wariancję (zwykle jest to Entropia informacji lub Gini Impurity dla zmiennych dyskretnych), ale w moim doświadczenie Drzewa decyzyjne rzadko działają dobrze w takich przypadkach. Wyjątkiem są przypadki takie jak „wiek studenta”, który wygląda na ciągły, ale w praktyce zakres wartości jest dość mały (szczególnie jeśli są one zgłaszane jako liczby całkowite).
źródło
Są tutaj dobre odpowiedzi, ale jestem zaskoczony, że nie podkreślono jednej rzeczy. CART nie przyjmuje żadnych dystrybucyjnych założeń dotyczących danych, w szczególności zmiennej odpowiedzi. W przeciwieństwie do tego, OLS regresji (na ciągłych reakcji) i regresji logistycznej (niektóre kategoryjnych zmiennych odpowiedzi), na przykład, nie wprowadzać silny założeń; w szczególności regresja OLS zakłada, że odpowiedź jest warunkowo normalnie rozłożona, a logistyka zakłada, że odpowiedź jest dwumianowa lub wielomianowa.
Brak takich założeń CARTa jest mieczem obosiecznym. Gdy te założenia nie są uzasadnione, daje to podejście względną przewagę. Z drugiej strony, gdy te założenia się utrzymują, z danych można uzyskać więcej informacji, uwzględniając te fakty. Oznacza to, że standardowe metody regresji mogą być bardziej informacyjne niż CART, gdy założenia są prawdziwe.
źródło