Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Inteligencja Obliczeniowa Drzewa Decyzji. Wykład 23 Włodzisław Duch Uniwersytet Mikołaja Kopernika.

Podobne prezentacje


Prezentacja na temat: "Inteligencja Obliczeniowa Drzewa Decyzji. Wykład 23 Włodzisław Duch Uniwersytet Mikołaja Kopernika."— Zapis prezentacji:

1 Inteligencja Obliczeniowa Drzewa Decyzji. Wykład 23 Włodzisław Duch Uniwersytet Mikołaja Kopernika

2 Co było Odkrywanie wiedzy metodami neuronowymi Stosowanie reguł Budowa systemu ekspertowego z odkrytych reguł

3 Co będzie Drzewa decyzji Testy i konstrukcje drzew Przycinanie drzew. CART, C 4.5, SSV Inne drzewa

4 DT - przykład Klasy: {rakowe, zdrowe} Cechy: ciało komórki: {cienie, paski} jądra: {1, 2}; ogonki: {1, 2} Klasy: {rakowe, zdrowe} Cechy: ciało komórki: {cienie, paski} jądra: {1, 2}; ogonki: {1, 2} ra k zdrowy

5 Trudniejszy przykład

6 Ogólne własności Drzewo decyzji: Ogólne => Szczegółowe węzeł - test atrybutu rozgałęzienie - wartość atrybutu lub podzbiór liście - przypisane do klas Testy: podział pojedynczej cechy, lub kombinacji Attrybut={wartość i } lub Attrybut < wartość i Kryteria: maksymalizacja ilości informacji, maksymalizacja liczby poprawnie podzielonych obiektów, czystość węzła Przycinanie: usuń gałęzie, które zawierają zbyt mało przypadków prostsze drzewo może lepiej generalizować oceń optymalną złożoność na zbiorze walidacyjnym. Kryterium stopu: osiągnięta dokładność podziałów, zbyt wiele gałęzi.

7 Generyczny algorytm TDIDT TDIDT - Top Down Iterative Decision Tree function buduj_drzewo(E: zbiór przyk.) returns drzewo; T := generuj_tests(E); t := najlepszy_test(T, E); P := podział E indukowany przez t; if kryterium_stopu(E, P) then return liść(info(E)) else for all E j in P: t j := buduj_drzewo(E j ); return węzeł(t, {(j,t j )}; function DT(E: zbiór przykładów) returns drzewo; T' := buduj_drzewo(E); T := obetnij_drzewo(T'); return T;

8 Wybór atrybutu Który atrybut powinien być najpierw? Ile informacji zawiera dany podział ? Średnia l. bitów do zakodowania dowolnego wektora z S wynosi: p + i p - proporcje w lewej i prawej gałęzi. Zbiór wektorów S Informacja dla czystych węzłów = 0; jest max dla najbardziej pomieszanych.

9 Przykład Obliczenia ilości informacji E:

10 Tworzenie drzewa Tworzenie drzewa: szukanie w przestrzeni hipotez. ID3 - podział w oparciu o zysk informacyjny. Lepsze mniejsze drzewo. Dość odporne na szum. Lokalne minima.

11 Granice decyzji Podział hierarchiczny na hiperprostokąty.

12 Drzewa proste i skośne

13 Granice skośne

14 Niestabilność DT

15 Brzytwa Ockhama Czemu preferować prostsze drzewa? 1. Mało prostych hipotez, więc mała szansa, że przypadkiem pasują do danych. 2. Proste drzewa nie powinny zbytnio dopasować się do danych. 3. Przetrenowanie modelu dla zbyt złożonych drzew, zła generalizacja. Ale: 1. Dla małych zbiorów o wielu atrybutach można tworzyć wiele prostych opisów danych.

16 Przetrenowanie Model H jest zbytnio dopasowany do danych (overfits) gdy: Istnieje model H taki, że: Błąd-treningowy(H) < Błąd-treningowy(H) Błąd-testowy(H) > Błąd-testowy(H) Zbyt szczegółowe wnioski przy dla danej populacji przypadków treningowych. Dokładność jako funkcja liczby węzłów drzewa. Wyniki mogą być gorsze niż dla klasyfikatora większościowego!

17 Przykład Przypadkowo dobrane 2 klasy. Niech klasa większościowa C 1 ma p > 0.5 Klasyfikator większościowy robi (1-p) błędów. Przetrenowane drzewo ma: Np węzłów z klasy C 1 N Np z klasy C 2. Drzewo przypisuje wektor X do klasy C 1 z p i C 2 z 1-p. Macierz rozrzutu: Prawd. błędu: Np. dla p=0.75 będzie 37.5% błędów dla przetrenowanego drzewa zamiast 25% dla większościowego.

18 Unikanie przetrenowanie Jak uniknąć przetrenowania i radzić sobie z szumem? 1. Zakończ rozwijanie węzła jeśli jest zbyt mało danych by wiarygodnie dokonać podziału. 2. Zakończ jeśli czystość węzłów (dominacja jednej klasy) jest większa od zadanego progu - forward pruning DT => drzewo prawd. klas. 3. Utwórz drzewo a potem je przytnij (backward pruning)a potem je przytnij 1. Przycinaj korzystając z wyników dla kroswalidacji lub dla zbioru walidacyjnego. 2. Korzystaj z MDL (Minimum Description Length): Min Rozmiar(Drzewa) + Rozmiar(Drzewa(Błędów)) 3. Oceniaj podziały zaglądając poziom (lub więcej) w głąb.

19 DT dla raka piersi

20 DT => reguły Zamień DT na reguły i uprość: łatwo ocenić, które reguły można usunąć i optymalizować pozostałe.

21 1R 1R: najprostsze drzewo (Holte 1993), niezłe rezultaty. Jeden poziom, atrybuty nominalne. Algorytm: Dla każdego atrybutu A dla każdej wartości atrybutu A i : policz częstości występowania klas znajdź klasę C występującą najczęściej utwórz regułę: IF A i THEN C Oblicz dokładność tej reguły. Wybierz reguły o największej dokładności. Wartość brakująca ? traktowana jest jak każda inna. Przykład - grać czy nie graćPrzykład - grać czy nie grać?

22 1R cd Jak traktować ciągłe wartości numeryczne? Podziel obszary na interwały i traktuje je jak nominalne. Dla każdego atrybutu A porządkuj przypadki zgodnie z wartościami tego atrybutu ustal granice przedziałów dla wartości, przy których zmienia się klasa mająca większość. Minimalizuje to liczbę błędów w algorytmie 1R. Przykład: temperatura i jej korelacja z decyzją gracza: By uniknąć szumu można wprowadzić minimalną liczbę danych/interwał: Uproszczone reguły

23 ID 3 ID3: Interactive dichotomizer version 3, pierwotnie CLS (Concept Learning System), R. Quinlan (1986) Tylko do atrybutów nominalnych (nieuporządkowanych). Dla atrybutów rzeczywistych: konieczna dyskretyzacja. Ocena podziałów - za pomocą zysku informacji, Gain(D,A) Podział węzła na kilka podgałęzi, dla różnych wartości A Preferencje: wszystkie hipotezy możliwe, ale te dla drzew o dużym zysku informacyjnym w pobliżu korzenia preferowane - lokalne minima. Brakowało przycinania i dyskretyzacji. Rozwinięcie ID3 => drzewo C4.5 i C5

24 C 4.5 R. Quinlan (1993), jedno z najbardziej popularnych DT Typowy algorytm TDIDT Testy: A=? dla nominalnych, A

25 NewID Algorytm: dane przykłady E, atrybuty A i klasy c=1..C Lista bieżących przykładów D = E w korzeniu drzewa Jeśli D ma czyste liście (przykłady z pojedynczej klasy) to zatrzymaj. Dla każdego węzła i jeszcze nie użytych atrybutów powtarzaj: jeśli dostępne atrybuty nie mają określonych wartości utwórz węzeł typu Konflikt else: oblicz max j Gain(A j,c); utwórz węzły potomne dzieląc D k na podzbiory Końcowe drzewo jest zbytnio dopasowane. Drzewo do regresji: wybierz podział tak, by wariancja wewnątrz klas po podziale była jak najmniejsza:

26 NewID cd. Brakujące wartości ? i wartości obojętne * Przycinanie: Ocena na zbiorze walidacyjnym, próg R (zwykle R=10): Jeśli poddrzewo T W poprawia o R% dokładność klasyfikacji węzła W to schodź niżej; else zamień W na liść. NewID używa podzbiorów, atrybutów porządkowych, w. ciągłych. Jeśli niektóre A=? dla atrybutu binarnego w danych treningowych to węzłom potomnym przypisujemy wektory z A=T i A=N zgodnie z rozkładem a priori lub oceną Laplacea: N(T) = (N(c,A=T)+1)/(N(c)+N(A)); N(A)=2, l. wartości A Dla testu ocena l. wszystkich wektorów, a nie tylko w klasie c Wartości * są powielane.

27 NewID regresja. Drzewo do regresji: klasy ciągłe C(X) Kryterium stopu: nie rozwijaj węzła jeśli (D k ) < (E). Wybierz podział tak, by wariancja wewnątrz klas po podziale była jak najmniejsza:

28 CHAID CHi-squared Automatic Interaction Detection, jest w SPSS. Kryterium podziału atrybutu A jest test 2 Hipoteza: jeśli test A

29 CART Classification and Regression Trees (Breiman 1984). Kryterium podziału: indeks Gini; w danym węźle p c określa procent wektorów z klasy c; czystość węzła można zmierzyć za pomocą: Kryterium stopu: MDL, złożoność drzewa + informacja w liściach

30 SSV Kryterium separowalności par danych z różnych klas. Oddziel maksymalnie dużo par z różnych klas. Jeśli różne podziały dają to samo minimalizuj l. podziałów wewnątrz klasy Kryterium: Proste kryterium, różne metody obcinania drzewa, dobre wyniki.

31 SSV - przykład Drzewo dla chorób tarczycy. Atrybut TT4: czerwone - l. błędów; zielone - l. par prawidłowo podzielonych; niebieskie - l. podzielonych par tej samej klasy (druga cześć kryterium).

32 Ocena i wyniki DT: szybkie i proste. Zalety: Zwykle bardzo dobre wyniki w porównaniu z innymi klasyfikatorami. Łatwe w użyciu, prawie nie mają parametrów do ustawiania. Dane nominalne lub numeryczne. Zastosowania: klasyfikacja i regresja. Prawie wszystkie pakiety Data Mining mają drzewa decyzji. Problemy z DT: mało danych, duża liczba ciągłych cech; niższe partie drzewa mają b. mało danych, przypadkowe podziały; nie wszystkie koncepcje dają się dobrze ująć za pomocą DT, np. większość jest za.

33 Idee Wiele usprawnień. Drzewa wieloczynnikowe: skośne granice decyzji; drzewa sieci neuronowych; rekursywny podział za pomocą LDA lub FDA Kryteria podziału: informacja w pobliżu korzenia, dokładność w pobliżu liści. przycinanie na podstawie reguł - działa również przy korzeniu; Komitety drzew: wielokrotne uczenie na randomizowanych danych (boosting) uczenie z różnymi parametrami obcinania Drzewa rozmyte

34 Koniec wykładu 23 Dobranoc !


Pobierz ppt "Inteligencja Obliczeniowa Drzewa Decyzji. Wykład 23 Włodzisław Duch Uniwersytet Mikołaja Kopernika."

Podobne prezentacje


Reklamy Google