Co to są drzewa decyzji

Podobne dokumenty
Indukowane Reguły Decyzyjne I. Wykład 3

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

Wysokość drzewa Głębokość węzła

Drzewa decyzyjne. Nguyen Hung Son. Nguyen Hung Son () DT 1 / 34

Metody klasyfikacji danych - część 1 p.1/24

Algorytmy klasyfikacji

Systemy decyzyjne Wyk lad 4: Drzewa decyzyjne

Drzewo. Drzewo uporządkowane ma ponumerowanych (oznaczonych) następników. Drzewo uporządkowane składa się z węzłów, które zawierają następujące pola:

Przykładowe B+ drzewo

ALGORYTMY I STRUKTURY DANYCH

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

Metody indukcji reguł

Drzewa podstawowe poj

Analiza danych DRZEWA DECYZYJNE. Drzewa decyzyjne. Entropia. test 1 dopełnienie testu 1

PODSTAWY STATYSTYCZNEGO MODELOWANIA DANYCH. Wykład 6 Drzewa klasyfikacyjne - wprowadzenie. Reguły podziału i reguły przycinania drzew.

Wykład 2. Drzewa zbalansowane AVL i 2-3-4

Algorytmy i struktury danych. wykład 5

Podstawy Informatyki. Metody dostępu do danych

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Indukowane Reguły Decyzyjne I. Wykład 8

Reguły decyzyjne, algorytm AQ i CN2. Reguły asocjacyjne, algorytm Apriori.

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2014/2015. Drzewa BST c.d., równoważenie drzew, kopce.

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

Drzewa czerwono-czarne.

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

Algorytmy i Struktury Danych

Automatyczne wyodrębnianie reguł

Algorytmy i struktury danych

Podstawy Informatyki. Wykład 6. Struktury danych

Każdy węzeł w drzewie posiada 3 pola: klucz, adres prawego potomka i adres lewego potomka. Pola zawierające adresy mogą być puste.

ALGORYTM RANDOM FOREST

3.2 Wykorzystanie drzew do generowania pytań

Drzewa binarne. Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0. jest drzewem binarnym Np.

Wstęp do programowania. Drzewa podstawowe techniki. Piotr Chrząstowski-Wachtel

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Wykład 8. Drzewa AVL i 2-3-4

Algorytmy klasyfikacji

Drzewa decyzyjne i lasy losowe

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Sortowanie bąbelkowe

Drzewa BST i AVL. Drzewa poszukiwań binarnych (BST)

Grafy (3): drzewa. Wykłady z matematyki dyskretnej dla informatyków i teleinformatyków. UTP Bydgoszcz

Wykład X. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2016 Janusz Słupik

Uczenie maszyn. Projekt: Porównanie algorytmów tworzenia drzew decyzyjnych. Politechnika Wrocławska. Michał Płodowski Michał Suszko

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Tadeusz Pankowski

Teoretyczne podstawy informatyki

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych

Kolejka priorytetowa. Często rozważa się kolejki priorytetowe, w których poszukuje się elementu minimalnego zamiast maksymalnego.

Indeksy. Wprowadzenie. Indeksy jednopoziomowe indeks podstawowy indeks zgrupowany indeks wtórny. Indeksy wielopoziomowe

Data Mining Wykład 5. Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny. Indeks Gini. Indeks Gini - Przykład

Wykład 3. Drzewa czerwono-czarne

Przeszukiwanie z nawrotami. Wykład 8. Przeszukiwanie z nawrotami. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279

Algorytm grupowania danych typu kwantyzacji wektorów

Ćwiczenie 6. Hurtownie danych

Matematyka dyskretna - 7.Drzewa

Baza danych dla potrzeb zgłębiania DMX

Teoretyczne podstawy informatyki

Przypomnij sobie krótki wstęp do teorii grafów przedstawiony na początku semestru.

Metoda podziału i ograniczeń

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Wybrane zagadnienia uczenia maszynowego. Zastosowania Informatyki w Informatyce W2 Krzysztof Krawiec

Systemy decyzyjne Wykªad 5: Drzewa decyzyjne

46 Olimpiada Biologiczna

Algorytmy i Struktury Danych

Drzewa klasyfikacyjne Lasy losowe. Wprowadzenie

Jakość uczenia i generalizacja

Klasyfikacja. Indeks Gini Zysk informacyjny. Eksploracja danych. Klasyfikacja wykład 2

Drzewa klasyfikacyjne algorytm podstawowy

Porządek symetryczny: right(x)

Abstrakcyjne struktury danych - stos, lista, drzewo

Reguły asocjacyjne, wykł. 11

WSTĘP DO INFORMATYKI. Drzewa i struktury drzewiaste

Egzaminy i inne zadania. Semestr II.

Algorytmy i Struktury Danych, 9. ćwiczenia

Złożoność i zagadnienia implementacyjne. Wybierz najlepszy atrybut i ustaw jako test w korzeniu. Stwórz gałąź dla każdej wartości atrybutu.

Programowanie obiektowe

Podstawowe pojęcia dotyczące drzew Podstawowe pojęcia dotyczące grafów Przykłady drzew i grafów

Wyk lad 8: Leniwe metody klasyfikacji

Definicja pliku kratowego

Wprowadzenie. Data Science Uczenie się pod nadzorem

Drzewa decyzyjne. Inteligentne Obliczenia. Wydział Mechatroniki Politechniki Warszawskiej. Anna Sztyber

Filogeneza: problem konstrukcji grafu (drzewa) zależności pomiędzy gatunkami.

Wykład 2. Drzewa poszukiwań binarnych (BST)

Wstęp do programowania

Co to jest grupowanie

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Algorytmy i Struktury Danych

Wykład 6. Drzewa poszukiwań binarnych (BST)

Indukcja drzew decyzyjnych

Znajdowanie skojarzeń na maszynie równoległej

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Listy, kolejki, stosy

Transkrypt:

Drzewa decyzji

Co to są drzewa decyzji Drzewa decyzji to skierowane grafy acykliczne Pozwalają na zapis reguł w postaci strukturalnej Przyspieszają działanie systemów regułowych poprzez zawężanie przestrzeni przeszukiwania

Terminologia Węzłem drzewa klasyfikacji dla przestrzeni klasyfikacji X i zbioru klas C nazywamy dowolną parę W =( f,c), gdzie f:x {0,1} oraz c C. Funkcję f nazywamy wówczas funkcją przynależności do węzła W, a klasę c etykietą węzła W. Rodzeństwo - węzły mające wspólnego rodzica (każdy węzeł jest dla pozostałych bratem). Poddrzewem drzewa W jest jego każde poddrzewo bezpośrednie, a także każde poddrzewo dowolnego poddrzewa bezpośredniego. Węzłem drzewa klasyfikacji D nazywamy węzeł główny drzewa, a także każdy węzeł dowolnego poddrzewa bezpośredniego D. Liściem drzewa D nazywamy każdy węzeł drzewa W, który jest węzłem głównym poddrzewa z pustą listą poddrzew właściwych. Gałęzią drzewa D nazywamy dowolny ciąg węzłów (W1,...Wn) taki, że n N, W1 jest węzłem głównym drzewa D, Wn jego liściem oraz dla każdego i {2,...,n} Wi jest podwęzłem węzła Wi 1. Długością gałęzi nazywamy liczbę węzłów ją stanowiących. Głębokością drzewa nazywamy maksymalną długość gałęzi tego drzewa. Drzewem binarnym nazywamy drzewo, w którym każdy węzeł nie będący lisciem posiada dokładnie dwa podwęzły.

Budowa drzewa Korzeń Gałęzie/Krawędzie Węzeł Liście

Zapis reguł drzew decyzji Forma 1 If (Outlook = rain ) & (windy= False ) then Play = Yes If (Outlook = rain ) & (windy= True ) then Play = No If (Outlook = overcast ) then Play = Yes If (Outlook = sunny ) & (humidity>75) then Play = No If (Outlook = sunny ) & (humidity<=75) then Play = Yes Forma 2 If (Outlook = rain ) then chk_wind = Yes If (Outlook = overcast ) then play = Yes If (Outlook = sunny ) then chk_humidity = Yes If (chk_wind = Yes) & (windy= False ) then Play = Yes If (chk_wind = Yes) & (windy= True ) then Play = No If (chk_humidity = Yes) & (humidity>75) then Play = No If (chk_humidity = Yes) & (humidity<=75) then Play = Yes

Dane irysy 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7

Drzewo dla danych Irysy

Przykład budowy drzewa 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7

Przykład budowy drzewa 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7

Przykład budowy drzewa 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7

Przykład budowy drzewa 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7

Kryteria podziału stosowane w drzewach Indeks Gini: Współczynnik przyrostu informacji: Gdzie: Stosunek zysku informacyjnego (ang. information gain ratio) SSV

Algorytm drzewa decyzji function [drzewo,id] = Drzewo(drzewo,X,Y,id) [XL,YL,XP,YP,podzial] = Podziel(X,Y); drzewo=[drzewo;[ null,null;podzial]]; tid = Id; If XL ~= null drzewo(tid,1) = Id+1; [drzewo,id] = Drzewo(drzewo,XL,YL,Id+1); End; If XP ~= null drzewo(end,2) = tid; [drzewo,id] = Drzewo(drzewo,XP,YP,Id+1); End;

Algorytm podziel function [XL,YL,XP,YP,Podzial] = Podiel(X,Y) AttrN -> liczba atrybutów w zbiorze X max_jakosc = 0; For i=1:attrn Pobierz i-ty atrybut ze zmiennej X [jakosc,prog] = Znajdź optymalny podział wg. określonego kryterium If jakosc>max_jakosc max_jakosc = jakosc; max_atrybut = i; max_prog = prog; End; End; XL = X(max_atrybut)<max_prog XP = X(max_atrybut)>=max_prog Podzial = [max_atrybut,max_jakosc, max_prog]

Przycinanie drzewa Przycinanie drzewa zamiana poddrzewa w drzewie na postać liścia zwiększenie generalizacji i ograniczenie możliwości przeuczenia Problem objawia się nadmiernym uszczegółowieniem reguł Rozwiązania: Przycinanie w oparciu o transformację do postaci reguł. Jeżeli lewa strona oryginalnej reguły z drzewa daje identyczne rozwiązanie po usunięciu części przesłanek wówczas pozostaw wersję zredukowaną Przycinanie w oparciu o heurystyki Uszkodzony zaczyna od liści i działa w górę (BottomUp) mając dany węzeł nie będący liściem i jego poddrzewo oblicza w heurystyczny sposób wartość przewidywanego błędu dla aktualnego poddrzewa. oblicza wartość przewidywanego błędu dla sytuacji, gdyby rozpatrywane poddrzewo zastąpić pojedynczym liściem z kategorią najpopularniejszą wśród liści. porównuje te dwie wartości i ewentualnie dokonuje zamiany poddrzewa na pojedynczy liść propagując tę informację do swych przodków. Przycinanie poprzez test krzyżowy w teście krzyżowym na poziomie każdego węzła wyliczana jest wartość wsp. oceny węzła i dokładnośc klasyfikacji. Dla różnych poziomów zapamiętywana jest jakość klasyfikacji drzewa co umożliwia optymalne wyznaczenia głębokości drzewa. Kolor = Niebieski = Czerwony Sprawny

Przykładowe drzewa decyzji CART Drzewo binarne Indeks Gini Przycinanie w oparciu o Wsparcie dla danych niekompletnych Wykorzystanie alternatywnych atrybutów w węźle

Przykładowe drzewa decyzji ID3 Indeks zysku informacyjnego Działa jedynie dla atrybutów dyskretnych/symbolicznych Drzewo o zmiennej liczbie potomstwa wychodzącego z jednego węzła Liczba potomków wychodzących z węzła równa jest liczbie wartości unikatowych dla wybranej, najlepszej cechy Problem z liczebnością wartości unikatowych (niestabilność indeksu)

Przykładowe drzewa decyzji C4.5 i C5.0 Nowe kryterium względny zysk informacyjny Wsparcie dla cech ciągłych Wsparcie dla brakujących wartości (j.w.) Zmodyfikowana metoda oczyszczania C5.0 drzewo komercyjne.

Przykładowe drzewa decyzji SSV Podobne do CART Drzewo binarne Indeks SSV Przycinanie drzewa - test krzyżowy (ang. crosswalidaition)

Lasy drzew

Ograniczenia drzew Drzewa działają na zasadzie pierwszy najlepszy Szukamy najlepszej zmiennej i dla niej najlepszego podziału Ta strategia nie zawsze prowadzi do optymalnego rozwiązania Czasem rozwiązanie na pozór gorsze ostatecznie prowadzi do lepszych wyników Np. jadąc z punktu A do punktu B nie zawsze najlepiej jest jechać najkrótszą drogą, czasem droga dłuższa może być szybsza (np. fragment autostradą)

Lasy drzew Szukamy nie najlepszego rozwiązania tylko grupy najlepszych rozwiązań! Potem robimy głosowanie rozwiązań cząstkowych.

Lasy Drzew

Lasy Drzew uwagi Im więcej ekspertów tym większa szansa na poprawne rozwiązanie Lasy drzew pozwalają na zwiększenie szansy poprawnej klasyfikacji Problem doboru szerokości wiązki (rozmiaru lasu) jeśli będzie za duży to może powstać dużo słabych drzew pogarszających jakość działania

Drzewa heterogeniczne

Definicja Drzewa heterogeniczne drzewa o różnych funkcjach w węźle Dużo bardziej elastyczne rozwiązują problemy drzew dla danych ciągłych Przykładowe funkcje węzłów: Funkcja odległości Funkcja liniowa Funkcja kwadratowa

Przykład 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.2 0.4 0.6 0.8 1

Przykład drzewa heterogenicznego 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.2 0.4 0.6 0.8 1

Drzewa bazujące na odległościach Policz wzajemne odległości pomiędzy wszystkimi wektorami zbioru treningowego Wynik macierz D podaj na wejście drzewa decyzji Wyniki działania:

Drzewa z funkcjami liniowymi w węzłach 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.2 0.4 0.6 0.8 1