Drzewa decyzyjne w uczeniu maszynowym: funkcje, klasyfikacja, zalety i wady
Opublikowany: 2020-05-14Każdy człowiek musi podejmować decyzje w swoim życiu. Decyzje te są zależne od sytuacji. Podjęcie właściwej decyzji pomaga stawić czoła sytuacji w najlepszy sposób, rozwiązując problem w najprostszy sposób. W dzieciństwie większość twoich decyzji kręciłaby się wokół tego, co jesz i rzeczy związanych z twoją szkołą.
Gdy dorośniesz, twoje decyzje zaczynają mieć poważniejsze konsekwencje nie tylko w twoim życiu, ale także w życiu innych. W pewnym momencie swojego życia będziesz podejmował decyzje dotyczące swojej kariery lub biznesu. Ta analogia ma na celu wprowadzenie w koncepcję drzewa decyzyjnego w uczeniu maszynowym.
Spis treści
Czym jest drzewo decyzyjne?
Na początek powiedzmy, że drzewo decyzyjne jest modelem predykcyjnym lub narzędziem wspierającym decyzje. Wiadomo, że dostarcza się dokładnych wniosków za pomocą projektów, modeli projektowych lub reprezentacji, które są zgodne ze strukturą przypominającą drzewo. Głównym celem tego modelu lub modelu uczenia maszynowego jest rozważenie pewnych atrybutów celu, a następnie podejmowanie decyzji na podstawie tych atrybutów.
Większość decyzji w drzewie decyzyjnym wynika z instrukcji warunkowych – if i else. Aby model drzewa decyzyjnego był lepszy od innych, będzie miał głębszą strukturę i bardziej złożone reguły nim rządzące. Jest to jeden z najbardziej preferowanych modeli uczenia nadzorowanego w uczeniu maszynowym i jest stosowany w wielu obszarach. Może wyglądać jak schemat blokowy zaprojektowany z uwzględnieniem technik algorytmicznych, aby zapewnić, że podział odbywa się zgodnie z warunkami.
Struktura tego schematu blokowego jest dość prosta. Ma węzeł główny, który służy jako podstawa budowy modelu. Następnie niektóre wewnętrzne węzły i gałęzie pokazują odpowiednio cechy lub testy i wyniki testów. Węzeł liścia reprezentuje grupę o wartościach podobnych do tych, które są osiągane, gdy podejmowane są decyzje dotyczące powiązanych atrybutów.
Drzewa decyzyjne znajdują zastosowanie przede wszystkim w problemach klasyfikacji i regresji. Służą do tworzenia zautomatyzowanych modeli predykcyjnych, które obsługują więcej niż kilka aplikacji, nie tylko w zastosowaniach algorytmów uczenia maszynowego, ale także między innymi w statystykach, nauce o danych i eksploracji danych. Te struktury oparte na drzewach zapewniają jedne z najdokładniejszych modeli predykcyjnych, które są zarówno łatwe do interpretacji, jak i bardziej stabilne niż większość innych modeli predykcyjnych.

W przeciwieństwie do modeli liniowych, które są dobre tylko dla określonej liczby problemów, modele oparte na drzewach decyzyjnych mogą być również używane do mapowania relacji nieliniowych. Nic dziwnego, że drzewa decyzyjne są tak popularne. Jednym z bardzo ważnych powodów jest łatwość zrozumienia ostatecznego modelu drzewa decyzyjnego. Może dość jasno opisać, co kryło się za przepowiednią. Stanowią one również podstawę bardziej zaawansowanych metod współpracy lub zespołowych, w tym między innymi wzmacniania gradientu, workowania i losowych lasów.
Jak definiujesz drzewo decyzyjne?
Teraz, gdy opracowaliśmy podstawowe zrozumienie tego pojęcia, zdefiniujmy go za Ciebie. Drzewo decyzyjne to nadzorowany algorytm uczenia maszynowego, którego można używać do rozwiązywania problemów opartych zarówno na klasyfikacji, jak i regresji. Zobaczmy, jak jest używany do klasyfikacji.
Załóżmy, że istnieje zbiór danych, nad którym obecnie pracujemy. Tworzymy plan 2D, który można podzielić na różne obszary tak, aby punkty w każdym obszarze były przypisane do tej samej klasy. Podziały lub podziały są oznaczone unikalnym charakterem. To jest drzewo binarne, nad którym tutaj pracujemy.
Istnieją różne elementy tego drzewa decyzyjnego, które nie mają wcześniejszej reprezentacji, ale są tworzone przy użyciu dostarczonych nam danych szkoleniowych. Te rzeczy obejmują liczbę węzłów, które będzie miało to drzewo, jego położenie na krawędziach i jego strukturę. Nie będziemy tutaj tworzyć drzewa od zera. Będziemy posuwać się tylko do przodu, biorąc pod uwagę, że nasze drzewo już tam jest.
Jak możemy sklasyfikować nowe punkty wejściowe? Aby to zrobić, wystarczy zejść z drzewa. Podczas przemierzania będziemy nadal zadawać pytanie o punkt danych po dotarciu do każdego węzła. Na przykład, gdy zadamy to pytanie w węźle głównym, odpowiedź pozwoliłaby nam rozgałęzić się w prawo lub w lewo. Ogólna zasada jest taka, że jeśli zadane pytanie jest prawdziwe i warunek postawiony w warunku jest spełniony, musimy przejść w lewo. Jeśli to nieprawda, musimy dobrze się rozgałęziać. Jeśli nasz warunek zabierze nas do lewego węzła, wiedzielibyśmy, do jakiej klasy należy przypisać punkt wejściowy.
Jeśli chodzi o sposób demonstrowania drzewa decyzyjnego, jest kilka rzeczy, o których nigdy nie należy zapominać. Nie ma reguły ani konieczności, która mówiłaby, że musimy naprzemiennie przechodzić między dwiema współrzędnymi drzewa decyzyjnego podczas jego przechodzenia. Możemy wybrać tylko jedną cechę lub wymiar. Musimy pamiętać, że drzew decyzyjnych można używać z zestawem danych o dowolnym wymiarze. W naszym przykładzie wzięliśmy dane 2D, ale to nie znaczy, że drzewa decyzyjne są przeznaczone tylko dla dwuwymiarowych zestawów danych.
Zamówienie: rodzaje drzewa binarnego
Czy kiedykolwiek brałeś udział w konkursie na Dwadzieścia Pytań? Jest to bardzo podobne do działania drzew decyzyjnych. Dowiedzmy się, jak? Ostatecznym celem gry w Dwadzieścia pytań jest znalezienie obiektu, o którym myśli osoba odpowiadająca na pytania, odpowiadając na pytania. Na pytania można odpowiedzieć tylko tak lub nie.
W miarę postępów w grze będziesz wiedział z poprzednich odpowiedzi, jakie konkretne pytania zadać, aby uzyskać właściwą odpowiedź przed zakończeniem gry. Drzewo decyzyjne to seria pytań, które pomagają uzyskać ostateczną odpowiedź, prowadząc Cię do zadawania bardziej trafnych pytań.
Czy pamiętasz, w jaki sposób zostajesz przekierowany do osoby, z którą chcesz porozmawiać w firmie przez pocztę głosową? Najpierw rozmawiasz ze skomputeryzowanym asystentem, a następnie naciskasz szereg przycisków na swoich telefonach i wprowadzasz kilka szczegółów dotyczących swojego konta, zanim dotrzesz do osoby, z którą chciałeś porozmawiać. Może to być dla Ciebie kłopotliwe, ale w ten sposób większość firm korzysta z drzew decyzyjnych, aby pomóc swoim klientom dotrzeć do odpowiedniego działu lub porozmawiać z właściwą osobą. Przeczytaj także 6 rodzajów nadzorowanego uczenia się, o których musisz wiedzieć.
Jak działa drzewo decyzyjne?
Zastanawiasz się, jak stworzyć idealne drzewo decyzyjne? Jak wspomnieliśmy wcześniej, drzewa decyzyjne to klasa algorytmów, które służą do rozwiązywania problemów uczenia maszynowego należących do typów klasyfikacji i regresji. Może być stosowany zarówno do zmiennych kategorycznych, jak i ciągłych.
Algorytm ten ma prosty sposób na przejście do przodu — dzieli zestaw danych lub przykładowe dane na różne zestawy danych, przy czym każdy zestaw danych jest zgrupowany razem i ma te same atrybuty. Drzewa decyzyjne wykorzystują szereg algorytmów do różnych celów – identyfikują podział, najważniejsze zmienne i najlepszą wartość wyniku, która może skutkować dalszymi podziałami.
Zazwyczaj przepływ pracy drzewa decyzyjnego obejmuje podział danych na zestaw danych uczących i testowych, zastosowanie algorytmów i ocenę wydajności modelu. Zrozummy, jak to działa na bardzo prostym przykładzie. Załóżmy, że chcemy sprawdzić, czy dana osoba jest odpowiednia do pracy, czy nie. To będzie korzeń drzewa.
Teraz przechodzimy do cech lub atrybutów drzewa, które będą stanowić węzły wewnętrzne. Na podstawie tych atrybutów zostaną podjęte decyzje – uformowanie gałęzi drzewa. Zróbmy tutaj inne założenie. Parametrem dla osoby uznanej za odpowiednią do pracy jest jej doświadczenie 5 lub więcej lat. Pierwszy podział będzie miał miejsce na tym parametrze, który właśnie ustawiliśmy.
Potrzebujemy więcej zestawów parametrów do dalszego podziału. Te parametry mogą dotyczyć ich przynależności do określonej grupy wiekowej lub nie, posiadania pewnego stopnia lub nie, i tak dalej. Wyniki przedstawiają liście drzewa inne niż korzenie i gałęzie. Liście nigdy się nie rozdzielają i nie przedstawiają decyzji. To drzewo pomoże Ci zdecydować, czy kandydat jest odpowiedni do pracy, czy nie.
Jak już wspomniano, drzewo decyzyjne ma swoją osobliwą reprezentację, która umożliwia mu rozwiązanie problemu za nas. Ma korzenie, wewnętrzne węzły, gałęzie i liście, z których każdy służy określonemu celowi lub wykonuje określoną pracę. Poniższe kroki pomogą ci stworzyć reprezentację drzewa:
- Korzeń drzewa zawiera zoptymalizowaną wersję najlepszego atrybutu
- Podziel przykładowe dane na podzbiory, używając odpowiednich atrybutów. Upewnij się, że nowe podzbiory lub grupy danych nie mają różnych wartości dla tego samego atrybutu
- Powtarzaj powyższe dwa kroki, aż będziesz mieć liście dla każdej gałęzi w swoim drzewie decyzyjnym
Drzewo klasyfikacji lub regresji (CART)
Weźmy przykład. Wyobraź sobie, że otrzymujemy zadanie sklasyfikowania kandydatów do pracy na podstawie pewnych predefiniowanych atrybutów, aby zapewnić, że na końcu procesu zostaną wybrani tylko zasługujący na to kandydaci. Decyzja o wyborze kandydata zależałaby od wydarzenia w czasie rzeczywistym lub możliwego. Wszystko, czego potrzebujemy, to drzewo decyzyjne, aby znaleźć właściwe kryteria klasyfikacji. Wyniki będą zależeć od sposobu przeprowadzenia klasyfikacji.
Klasyfikacja, jak wszyscy wiemy, składa się z dwóch etapów. Pierwszy krok polega na zbudowaniu losowego modelu na przykładowym zbiorze danych. Drugi krok polega na predykcji – model wytrenowany w pierwszym kroku jest zaimplementowany w celu dokonania predykcji dotyczącej odpowiedzi na podane dane.

Teraz są pewne sytuacje, w których zmienna docelowa jest liczbą rzeczywistą lub decyzje są podejmowane na danych ciągłych. Możesz zostać poproszony o dokonanie prognozy dotyczącej ceny przedmiotu w oparciu o koszt robocizny. Możesz też zostać poproszony o ustalenie wynagrodzenia kandydata na podstawie jego wcześniejszej pensji, umiejętności, doświadczenia i innych istotnych informacji.
Wartość wartości docelowej w takich sytuacjach będzie albo jakąś wartością rzeczywistą, albo wartością powiązaną z ciągłym zestawem danych. Do rozwiązania tych problemów użyjemy regresji drzewa decyzyjnego. To drzewo weźmie pod uwagę obserwacje poczynione na cechach obiektu i nauczy model, aby przewidywał i dostarczał ciągły wynik, który ma absolutny sens.
Porozmawiajmy teraz o kilku podobieństwach i różnicach między drzewami decyzyjnymi klasyfikacji i regresji. Drzewa decyzyjne są używane jako modele klasyfikacyjne w sytuacjach, gdy zmienne docelowe mają charakter kategoryczny. Wartość, którą zestaw danych uczących uzyskuje bezpośrednio w punkcie kulminacyjnym węzła końcowego, jest równa wartości otrzymanej, gdy wybieramy tryb obserwacji dla tego konkretnego odcinka. W przypadku dodania jakiejkolwiek nowej obserwacji do tej sekcji drzewa, zastąpimy ją wartością trybu, a następnie dokonamy prognozy.
Z drugiej strony drzewa decyzyjne są używane jako modele regresji, gdy zmienne docelowe są częścią ciągłego zestawu danych. Wartość otrzymana w tym samym punkcie, o którym mówiliśmy dla drzew klasyfikacyjnych, jest średnią wartością obserwacji w tym rozdziale, jeśli chodzi o drzewa regresji.
Jest też kilka podobieństw. Oba modele drzew decyzyjnych wykorzystują rekurencyjne podejście binarne i dzielą zmienne niezależne na regiony, które nie nakładają się na siebie i są określone. W obu tych drzewach podział zaczyna się od wierzchołka drzewa, a obserwacje leżą w jednym regionie. Obserwacje te podzieliły zmienne na dwie gałęzie. Ten podział jest ciągłym procesem, który ustępuje w pełni wyrośniętemu drzewu.
Przeczytaj: Pomysły na projekty uczenia maszynowego
Jak nauczyć się modelu CART?
Jest kilka ważnych rzeczy, które musisz zrobić, aby stworzyć model CART. Obejmują one dobór zmiennych wejściowych oraz punktów podziałów w taki sposób, aby drzewo było właściwie skonstruowane. Do wyboru zmiennych wejściowych oraz punktów podziału wykorzystywany jest algorytm zachłanny redukujący funkcję kosztu.
Zwężenie drzewa kończy się za pomocą z góry określonego kryterium zatrzymania. Kryterium zatrzymania może wymieniać wszystko, na przykład liczbę instancji szkoleniowych przypisanych do węzłów liścia drzewa.
1. Algorytm zachłanny : Przestrzeń wejściowa musi być poprawnie podzielona, aby zbudować drzewo binarne. Rekursywny podział binarny jest algorytmem zachłannym używanym do tego celu. Jest to metoda numeryczna, która polega na zestawieniu różnych wartości. Funkcja kosztu jest następnie używana do wypróbowania kilku punktów podziału. Wybierany jest punkt podziału z minimalnym kosztem. Ta metoda służy do oceny wszystkich punktów podziału oraz zmiennych wejściowych.
2. Przycinanie drzew : Kryterium zatrzymania poprawia wydajność drzewa decyzyjnego. Aby było jeszcze lepiej, możesz spróbować przyciąć drzewo po nauce. Liczba podziałów w drzewie decyzyjnym wiele mówi o jego złożoności. Każdy woli drzewa, które są prostsze od innych. Nie przesadzają z danymi i są łatwe do odszyfrowania.
Najlepszym sposobem na przycięcie drzewa jest przyjrzenie się każdemu węzłowi liścia i sprawdzenie, jak usunięcie go wpłynie na drzewo. Usunięcie węzłów liści ma miejsce wtedy, gdy działanie to gwarantuje spadek funkcji kosztu. Kiedy myślisz, że nie ma możliwości dalszego poprawienia wydajności, możesz zatrzymać ten proces usuwania. Metody przycinania, których możesz użyć, obejmują
3. Kryterium zatrzymania : Wspomniana wcześniej metoda zachłannego podziału, o której mówiliśmy, musi mieć polecenie zatrzymania lub warunek, aby wiedzieć, kiedy się zatrzymać. Powszechnym kryterium jest wzięcie liczby instancji, do których przypisano każdy węzeł liścia. Jeśli ta liczba zostanie osiągnięta, podział nie nastąpi, a ten węzeł zostanie uznany za ostatni.
Załóżmy na przykład, że predefiniowane kryterium zatrzymania jest wymienione jako pięć wystąpień. Ta liczba mówi również wiele o dokładności drzewa według danych uczących. Jeśli jest zbyt dokładny lub zbyt dokładny, spowoduje to nadmierne dopasowanie, co oznacza słabą wydajność.
Jak uniknąć nadmiernego dopasowania w drzewie decyzyjnym?
Większość drzew decyzyjnych jest narażona na overfitting. Możemy zbudować drzewo decyzyjne, które jest w stanie idealnie klasyfikować dane, lub możemy mieć sytuację, w której nie mamy żadnych atrybutów do podziału. To nie zadziała zbyt dobrze z testowym zestawem danych; jednak pasowałby do zestawu danych uczących. Możesz zastosować dowolne z dwóch podejść, o których wspomnimy, aby uniknąć tej sytuacji.

Możesz przyciąć drzewo, jeśli jest zbyt duże, lub zatrzymać jego wzrost, zanim osiągnie stan przeciążenia. W większości przypadków istnieje limit określony w celu kontrolowania wzrostu drzewa, który wymienia głębokość, liczbę warstw i inne rzeczy, które może mieć. Zbiór danych, na którym drzewo ma zostać przeszkolone, zostanie podzielony na zestaw danych testowych i zestaw danych uczących. Oba te zestawy danych będą miały maksymalne głębokości na podstawie zestawu danych uczących i będą testowane względem zestawu danych testowych. Wraz z tym podejściem można również użyć walidacji krzyżowej.
Wybierając przycinanie drzewa, testujesz przycięte wersje drzewa z wersją oryginalną. Jeśli przycięte drzewo radzi sobie lepiej niż jego wersja, jeśli chodzi o testowanie zestawu danych testowych, liście nie będą dostępne dla drzewa, dopóki taka sytuacja będzie się utrzymywała.
Dowiedz się więcej o: Drzewo decyzyjne w R
Zalety podejścia drzew decyzyjnych
- Może być używany zarówno z danymi ciągłymi, jak i kategorycznymi.
- Może dostarczyć wiele wyjść
- Potrafi interpretować dokładne wyniki, a Ty możesz określić ilościowo i zaufać wiarygodności drzew
- Dzięki tej metodzie możesz eksplorować dane, znajdować ważne zmienne i znajdować relacje między różnymi zmiennymi w celu wzmocnienia zmiennych docelowych i tworzenia nowych funkcji w znacznie krótszym czasie.
- Łatwo to zrozumieć i wyjaśnić innym
- Jest pomocny w czyszczeniu danych. W porównaniu z innymi metodami nie zajmuje to dużo czasu, ponieważ po pewnym momencie nie ma na nią wpływu brakujących wartości i wartości odstających
- Na efektywność i wydajność drzew decyzyjnych nie wpływają nieliniowe relacje między cechami
- Przygotowanie danych nie zajmuje dużo czasu, ponieważ nie wymaga zastępowania brakujących wartości, normalizacji danych i nie tylko.
- Jest to podejście nieparametryczne. Nie ma to nic wspólnego z projektowaniem i aranżacją przestrzenną klasyfikatorów
Wady drzew decyzyjnych
- Niektórzy użytkownicy mogą tworzyć drzewa decyzyjne, które są zbyt złożone, nawet jak na własne upodobania. Te drzewa nie uogólniają danych, jak robią to prostsze drzewa.
- Drzewa stronnicze często powstają z powodu dominacji pewnych klas. Dlatego bardzo ważne jest zrównoważenie danych próbki przed ich użyciem
- Czasami te drzewa nie są zbyt stabilne. Różnice w danych mogą skutkować utworzeniem drzewa, które nie pasuje do rachunku. Ta anomalia jest określana jako wariancja. Można sobie z tym poradzić za pomocą wzmocnienia i workowania.
- Nie możesz oczekiwać, że otrzymasz najlepsze drzewo decyzyjne z chciwymi algorytmami. Aby pozbyć się tego problemu, możesz trenować wiele drzew.
Wniosek
Ten blog omawia wszystkie ważne rzeczy, które uczeń powinien wiedzieć o drzewach decyzyjnych. Po przeczytaniu tego bloga lepiej zrozumiesz koncepcję i będziesz w stanie lepiej ją wdrożyć w prawdziwym życiu.
Jeśli chcesz dowiedzieć się więcej o uczeniu maszynowym i sztucznej inteligencji, sprawdź dyplom PG IIIT-B i upGrad w uczeniu maszynowym i sztucznej inteligencji, który jest przeznaczony dla pracujących profesjonalistów i oferuje ponad 450 godzin rygorystycznych szkoleń, ponad 30 studiów przypadków i zadań, Status absolwentów IIIT-B, ponad 5 praktycznych praktycznych projektów zwieńczenia i pomoc w pracy z najlepszymi firmami.
Do czego służy algorytm drzewa decyzyjnego?
Drzewa decyzyjne należą do rodziny algorytmów uczenia nadzorowanego i są jednymi z najszerzej stosowanych algorytmów klasyfikacyjnych. Jest bardzo łatwy do zrozumienia i interpretacji, co decyduje o jego popularności. Drzewa decyzyjne można wykorzystać do opracowania modeli szkoleniowych, które mogą przewidywać wartości zmiennych docelowych na podstawie prostych instrukcji decyzyjnych pochodzących z historycznych danych szkoleniowych. Najlepsze w algorytmie drzew decyzyjnych jest to, że można go efektywnie wykorzystać do rozwiązywania problemów klasyfikacji i regresji, do których inne algorytmy uczenia nadzorowanego nie mogą być zastosowane. W zależności od typu zmiennej docelowej można używać różnych rodzajów drzew decyzyjnych.
Drzewa decyzyjne należą do rodziny algorytmów uczenia nadzorowanego i są jednymi z najszerzej stosowanych algorytmów klasyfikacyjnych. Jest bardzo łatwy do zrozumienia i interpretacji, co decyduje o jego popularności. Drzewa decyzyjne można wykorzystać do opracowania modeli szkoleniowych, które mogą przewidywać wartości zmiennych docelowych na podstawie prostych instrukcji decyzyjnych pochodzących z historycznych danych szkoleniowych. Najlepsze w algorytmie drzew decyzyjnych jest to, że można go efektywnie wykorzystać do rozwiązywania problemów klasyfikacji i regresji, do których inne algorytmy uczenia nadzorowanego nie mogą być zastosowane. W zależności od typu zmiennej docelowej można używać różnych rodzajów drzew decyzyjnych.
W AI algorytm drzew decyzyjnych ma wiele zastosowań. Do najciekawszych zastosowań drzew decyzyjnych należy ocena potencjalnych możliwości rozwoju firm na podstawie danych historycznych. W tym celu historyczne dane sprzedaży mogą pomóc drzewom decyzyjnym wskazać możliwe ścieżki dalszej ekspansji i wzrostu biznesu. Drzewa decyzyjne mogą być również wykorzystywane do wyszukiwania potencjalnych klientów na podstawie danych demograficznych. Poza tym instytucje finansowe mogą również wykorzystywać drzewa decyzyjne do tworzenia modeli predykcyjnych do oceny zdolności kredytowej klientów i osób niespłacających kredytów.
Jakie inne algorytmy są używane w Sztucznej Inteligencji?
Algorytmy stosowane w sztucznej inteligencji można ogólnie podzielić na trzy części – algorytmy regresji, algorytmy klasyfikacji i algorytmy klastrowania. Algorytmy klasyfikacji służą do klasyfikacji zbiorów danych w określony sposób. Algorytmy grupowania są stosowane do całych zestawów danych w celu znalezienia różnic i podobieństw między określonymi punktami danych. Może służyć do wskazywania osób w tym samym wieku wśród dużej grupy klientów. Algorytmy regresji są pomocne w prognozowaniu przyszłych wyników w zależności od danych wejściowych. Na przykład algorytmy regresji można wykorzystać do projektowania modeli do przewidywania pogody.