Nguyen Hung Son () W5: Drzewa decyzyjne 1 / 38 Systemy decyzyjne Wykªad 5: Drzewa decyzyjne Nguyen Hung Son
Przykªad: klasyfikacja robotów Nguyen Hung Son () W5: Drzewa decyzyjne 2 / 38
Przykªad: drzewo decyzyjne Nguyen Hung Son () W5: Drzewa decyzyjne 3 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 4 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Nguyen Hung Son () W5: Drzewa decyzyjne 5 / 38 Co to jest drzewo decyzyjne Jest to struktura drzewiasta, w której w zªy wewn trzne zawieraj testy na warto±ciach atrybutów z ka»dego w zªa wewn trznego wychodzi tyle gaª zi, ile jest mo»liwych wyników testu w tym w ¹le; li±cie zawieraj informacje o przynale»no± obiektów do klas decyzyjnych. Drzewo decyzyjne koduje program zawieraj cy same instrukcje warunkowe
Klasyfikacja drzewem decyzyjnym Nguyen Hung Son () W5: Drzewa decyzyjne 6 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 7 / 38 Przykªad tablicy decyzyjnej x outlook Temperature humidity wind play(x) 1 sunny hot high weak no 2 sunny hot high strong no 3 overcast hot high weak yes 4 rain mild high weak yes 5 rain cold normal weak yes 6 rain cold normal strong no 7 overcast cold normal strong yes 8 sunny mild high weak no 9 sunny cold normal weak yes 10 rain mild normal weak yes 11 sunny mild normal strong yes 12 overcast mild high strong yes 13 overcast hot normal weak yes 14 rain mild high strong no
Przykªad drzewa decyzyjnego Nguyen Hung Son () W5: Drzewa decyzyjne 8 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 9 / 38 Klasyfikacja drzewem decyzyjnym x outlook Temperature humidity wind play(x) 15 rainy hot high weak??? dec(15) = yes
Nguyen Hung Son () W5: Drzewa decyzyjne 10 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Rodzaje testów Wyró»niamy 2 klasy funkcji testów Testy operuj si na warto±ciach pojedy«czego atrybutu (univariate tree): t : V a R t gdzie Testy b d ce kombinacj warto±ci kilku atrybutów (multivariate tree). t : V a1 V a2... V ak R t Va : dziedzina atrybutu a Rt : zbiór mo»liwych wyników testu Nguyen Hung Son () W5: Drzewa decyzyjne 11 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 12 / 38 Przykªady funkcji testu Dla atrybutów nominalnych a i oraz obiekt x: test to»samo±ciowy: t(x) { a i (x) 1 if (a i (x) = v) test równo±ciowy: t(x) = 0 otherwise { 1 if (a i (x) V ) test przynale»no±ciowy: t(x) = 0 otherwise Dla atrybutów o warto±ciach ci gªych: { 1 if (a i (x) > c) test nierówno±ciowy: t(x) = 0 otherwise, i.e., (a i (x) c) gdzie c jest warto±ci progow lub ci ciem
Nguyen Hung Son () W5: Drzewa decyzyjne 13 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Ocena jako±ci drzewa Jako± drzewa ocenia si rozmiarem: im drzewo jest mniejsze, tym lepsze maªa liczba w zªów, maªa wysoko±, lub maªa liczba li±ci; dokªadno±ci klasykacji na zbiorze treningowym dokªadno±ci klasykacji na zbiorze testowym Na przykªad: Q(T ) = α size(t ) + β accuracy(t, P ) gdzie α, β s liczbami rzeczywistymi size(.) jest rozmiarem drzewa accuracy(.,.) jest jako±ci klasykacji Nguyen Hung Son () W5: Drzewa decyzyjne 14 / 38
Problem konstrukcji drzew optymalnych: Dane s : tablica decyzyjna S zbiór funkcji testów TEST, kryterium jako±ci Q Szukane: drzewo decyzyjne T o najwy»szej jako±ci Q(T). Dla wi kszo±ci parametrów, problem szukania optymalnego drzewa jest NP-trudny! Wnioski: Trudno znale¹ optymalne drzewo w czasie wielomianowym; Konieczno± projektowania heurystyk. Quiz: Czy drzewo z przykªadu jest optymalne? Nguyen Hung Son () W5: Drzewa decyzyjne 15 / 38
Optymalne drzewo decyzyjne Nguyen Hung Son () W5: Drzewa decyzyjne 16 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 17 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Nguyen Hung Son () W5: Drzewa decyzyjne 18 / 38 Funkcja rekurencyjna buduj_drzewo(u, dec, T): 1: function buduj_drzewo(u, dec, T) 2: if (kryterium_stopu(u, dec) = true) then 3: T.etykieta = kategoria(u, dec); 4: koniec; 5: end if 6: t := wybierz_test(u, TEST); 7: T.test := t; 8: for v R t do 9: U v := {x U : t(x) = v}; 10: utwórz nowe poddrzewo T ; 11: T.gaª ¹(v) = T ; 12: buduj_drzewo(u v, dec, T ) 13: end for 14: end function
Funkcje pomocnicze Kryterium stopu: Zatrzymamy konstrukcji drzewa, gdy aktualny zbiór obiektów: jest pusty lub zawiera obiekty wyª cznie jednej klasy decyzyjnej lub nie ulega podziale przez»aden test Wyznaczenie etykiety zasad wi kszo±ciow : kategoria(p, dec) = arg max c V dec P [dec=c] tzn., etykiet dla danego zbioru obiektów jest klasa decyzyjna najliczniej reprezentowana w tym zbiorze. Kryterium wyboru testu: heurytyczna funkcja oceniaj ca testy. Nguyen Hung Son () W5: Drzewa decyzyjne 19 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 20 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Nguyen Hung Son () W5: Drzewa decyzyjne 21 / 38 Miary ró»norodno±ci zbioru Ka»dy zbiór obiektów X ulega podziale na klasy decyzyjne: X = C 1 C 2... C d gdzie C i = {u X : dec(u) = i}. Wektor (p 1,..., p r ), gdzie p i = C i X, nazywamy rozkªadem klas decyzyjnych w X. Conflict(X) = i<j C i C j = 1 2 Entropy(X) = C i X log C i X = p i log p i ( X 2 C i 2)
Wªasno±ci miar ró»norodno±ci Funkcja conf lict(x) oraz Ent(X) przyjmuj najwi ksz warto±, gdy rozkªad klas decyzyjnych w zbiorze X jest równomierny. najmniejsz warto±, gdy wszystkie obiekty w X s jednej kategorii (X jest jednorodny) W przypadku 2 klas decyzyjnych: Conflict(p, 1 p) = X 2 p(1 p) Entropy(p, 1 p) = p log p (1 p) log(1 p) Nguyen Hung Son () W5: Drzewa decyzyjne 22 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 23 / 38 Kryteria wyboru testu Niech t deniuje podziaª X na podzbiory: X 1... X r. Mo»emy stosowa nast puj ce miary do oceniania testów: liczba par obiektów rozró»nionych przez test t. disc(t, X) = conflict(x) conflict(x i ) kryterium przyrostu informacji (ang. Inf. gain). Gain(t, X) = Entropy(X) i p i Entropy(X i ) Im wi ksze s warto±ci tych ocen, tym lepszy jest test.
Nguyen Hung Son () W5: Drzewa decyzyjne 24 / 38 Miara Entropii dla ci N i p i Entropy(X i )
Rozró»nialno± dla ci Nguyen Hung Son () W5: Drzewa decyzyjne 25 / 38
Wªasno±ci funkcji ocen: Monotoniczno± : Je±li t deniuje drobniejszy podziaª ni» t to Gain(t, X) Gain(t, X) (analogiczn sytuacj mamy dla miary conf lict(). Funkcje ocen testu t przyjmuj maªe warto±ci je±li rozkªady decyzyjne w podzbiorach wyznaczanych przez t s zbli»one. Ci cia brzegowe: mo»na ograniczy przestrze«przeszukiwania do zbioru ci brzegowych Nguyen Hung Son () W5: Drzewa decyzyjne 26 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 27 / 38 Uniwersalne oceny Zamiast bezwzgl dnego przyrostu informacji, stosujemy wspóªczynnik przyrostu informacji Gain_ratio = Gain(t, X) iv(t, X) gdzie iv(t, X), zwana warto±ci informacyjn testu t (information value), jest deniowana jak nast.: iv(t, X) = r i=1 X i X log X i X
Ocena funkcji testu Rozró»nialno± : disc(t, X) = conflict(x) conflict(x i ) Przyrostu informacji (Information gain). Gain(t, X) = Entropy(X) i p i Entropy(X i ) Wspóªczynnik przyrostu informacji (gain ratio) Gain_ratio = Gain(t, X) r X i i=1 X log X i X Inne (np. Gini's index, test χ 2,...) Nguyen Hung Son () W5: Drzewa decyzyjne 28 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 29 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Nguyen Hung Son () W5: Drzewa decyzyjne 30 / 38 Przycinanie drzew Problem nadmiernego dopasowania do danych trenuj cych (prob. przeuczenia si ). Rozwi zanie: zasada krótkiego opisu: skracamy opis kosztem dokªadno±ci klasykacji w zbiorze treningowym zast pienie podrzewa nowym li±ciem (przycinanie) lub mniejszym podrzewem. Podstawowe pytania: Q: Kiedy poddrzewo mo»e by zast pione li±ciem? A: je±li nowy li± jest niegorszy ni» istniej ce poddrzewo dla nowych obiektów (nienale» cych do zbioru treningowego). Q: Jak to sprawdzi? A: testujemy na próbce zwanej zbiorem przycinania!
Nguyen Hung Son () W5: Drzewa decyzyjne 31 / 38 Ogólny schemat algorytmu przycinania Funkcja przytnij(t, P ) 1: for all n T do 2: utwórz nowy li± l etykietowany kategori dominuj c w zbiorze P n 3: if (li± l jest niegorszy od poddrzewa o korzeniu w n pod wzgl dem zbioru P ) then 4: zast p poddrzewo o korzeniu w n li±ciem l; 5: end if 6: end for 7: return T
Nguyen Hung Son () W5: Drzewa decyzyjne 32 / 38 Kryterium przycinania Niech e T (l) - bª d klasykacji kandyduj cego li±cia l, e T (n) - bª d klasykacji poddrzewa o korzeniu w n. Przycinanie ma miejsce, gdy e T (l) e T (n) + µ na ogóª przyjmujemy µ = 1. e T (n)(1 e T (n)) P T,n
Przykªad Nguyen Hung Son () W5: Drzewa decyzyjne 33 / 38
Nguyen Hung Son () W5: Drzewa decyzyjne 34 / 38 Outline 1 Wprowadzenie Denicje Funkcje testu Optymalne drzewo 2 Konstrukcja drzew decyzyjnych Ogólny schemat Kryterium wyboru testu Przycinanie drzew Problem brakuj cych warto±ci 3 Podsumowanie
Brakuje danych podczas uczenia si Mo»liwe s nast puj ce rozwi zania: Zredukowanie warto±ci kryterium wyboru testu (np. przyrostu informacji) dla danego testu o wspóªczynnik równy: liczba obiektów z nieznanymi warto±ciami liczba wszystkich obiektów Wypeªnienie nieznanych warto±ci atrybutu najcz ±ciej wyst puj c warto±ci w zbiorze obiektów zwi zanych z aktualnym w zªem Wypeªnienie nieznanych warto±ci atrybutu ±redni wa»on wyznaczon na jego zbiorze warto±ci. Nguyen Hung Son () W5: Drzewa decyzyjne 35 / 38
Brakuje danych podczas klasyfikowania Mo»liwe rozwi zania: Zatrzymanie procesu klasykacji w aktualnym w ¹le i zwrócenie wi kszo±ciowej etykiety dla tego w zªa (etykiety, jak ma najwi ksz liczb obiektów trenuj cych w tym w ¹le) Wypeªnienie nieznanej warto±ci wedªug jednej z heurystyk podanych wy»ej dla przypadku konstruowania drzewa Uwzgl dnienie wszystkich gaª zi (wszystkich mo»liwych wyników testu) i poª czenie odpowiednio zwa»onych probabilistycznie rezultatatów w rozkªad prawdopodobie«stwa na zbiorze mo»liwych klas decyzyjnych dla obiektu testowego. Nguyen Hung Son () W5: Drzewa decyzyjne 36 / 38
Zalety drzew decyzyjnych Efektywna (pami ciowo) reprezentacja poj ; Mo»liwo± reprezentacji zªo»onych poj ; Bardzo efektywny (obliczeniowo) proces klasykacji nowych przypadków ; Czytelna wizualizacja dla czªowieka, o ile drzewo nie jest zbyt skomplikowane; Istnieje ªatwa mo»liwo± przej±cia od drzew decyzyjnych do reguª decyzyjnych. Nguyen Hung Son () W5: Drzewa decyzyjne 37 / 38
Wady metody drzew decyzyjnych Mo»liwo± drastycznego bª du klasykacji w przypadku bª dnej warto±ci atrybutu testowanego blisko korzenia drzewa. Brak mo»liwo±ci uczenia si adaptacyjnego Mo»liwe du»e rozmiary drzew dla niektórych poj (ale nie ma reprezentacji hipotez efektywnej dla wszystkich poj ). Nguyen Hung Son () W5: Drzewa decyzyjne 38 / 38