1 / 34

Inteligencja Obliczeniowa Drzewa Decyzji.

Inteligencja Obliczeniowa Drzewa Decyzji. Wykład 23 Włodzisław Duch Uniwersytet Mikołaja Kopernika. Odkrywanie wiedzy metodami neuronowymi Stosowanie reguł Budowa systemu ekspertowego z odkrytych reguł. Co było. Drzewa decyzji Testy i konstrukcje drzew Przycinanie drzew.

vine
Download Presentation

Inteligencja Obliczeniowa Drzewa Decyzji.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

  5. Trudniejszy przykład

  6. Drzewo decyzji: Ogólne => Szczegółowe węzeł - test atrybutu rozgałęzienie - wartość atrybutu lub podzbiór liście - przypisane do klas Ogólne własności 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. TDIDT - Top Down Iterative Decision Tree Generyczny algorytm TDIDT function DT(E: zbiór przykładów) returnsdrzewo; T' := buduj_drzewo(E); T := obetnij_drzewo(T'); returnT; functionbuduj_drzewo(E: zbiór przyk.) returnsdrzewo; T := generuj_tests(E); t := najlepszy_test(T, E); P := podziałEindukowany przezt; ifkryterium_stopu(E, P) thenreturnliść(info(E)) else for allEjin P: tj := buduj_drzewo(Ej); returnwęzeł(t, {(j,tj)};

  8. Wybór atrybutu Który atrybut powinien być najpierw? p+ i p- - proporcje w lewej i prawej gałęzi. Zbiór wektorów S Ile informacji zawiera dany podział ? Średnia l. bitów do zakodowania dowolnego wektora z S wynosi: 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? • Mało prostych hipotez, więc mała szansa, że przypadkiem pasują do danych. • Proste drzewa nie powinny zbytnio dopasować się do danych. • Przetrenowanie modelu dla zbyt złożonych drzew, zła generalizacja. Ale: • 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 C1 ma p > 0.5 Klasyfikator większościowy robi (1-p) błędów. Przetrenowane drzewo ma: Np węzłów z klasy C1 N-Np z klasy C2. Drzewo przypisuje wektor X do klasy C1 z p i C2 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? • Zakończ rozwijanie węzła jeśli jest zbyt mało danych by wiarygodnie dokonać podziału. • Zakończ jeśli czystość węzłów (dominacja jednej klasy) jest większa od zadanego progu - forward pruningDT => drzewo prawd. klas. • Utwórz drzewo a potem je przytnij (backward pruning) • Przycinaj korzystając z wyników dla kroswalidacji lub dla zbioru walidacyjnego. • Korzystaj z MDL (Minimum Description Length):Min Rozmiar(Drzewa) + Rozmiar(Drzewa(Błędów)) • 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 Ai: policz częstości występowania klas znajdź klasę C występującą najczęściej utwórz regułę: IF Ai 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ć?

  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ł: Uproszczonereguł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 Typowy algorytm TDIDT Testy: A=? dla nominalnych, A<t, dla t=(Ai+ Ai+1)/2 (wystarczy sprawdzić tylko te wartości, dla których zmienia się klasa) Ocena podziałów - za pomocą zysku informacji, Gain(D,A) Dla testu atrybutu A o k wynikach: R. Quinlan (1993), jedno z najbardziej popularnych DT Największy zysk dla największego k Informacja zawarta w podziałach. Końcowe kryterium C4.5.

  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 maxj Gain(Aj,c); utwórz węzły potomne dzieląc Dk 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 * 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ą Laplace’a: 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. Przycinanie: Ocena na zbiorze walidacyjnym, próg R (zwykle R=10): Jeśli poddrzewo TW 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.

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

  28. CHAID CHi-squared Automatic Interaction Detection, jest w SPSS. Kryterium podziału atrybutu A jest test c2 Hipoteza: jeśli test A<A0 (lub A=A0) jest skorelowany z podziałem na klasę C i pozostałe to test c2 da małą wartość. Przykład: podział gatunków. Atrybut = dł. ogona. Tabela kontyngencji: Oczekiwane: eij= Nio x Ngj / N Rozkład c2 dla: k=(Nio-1) x (Ngj -1) stopni swobody.

  29. CART Classification and Regression Trees (Breiman 1984). Kryterium podziału: indeks Gini; w danym węźle pcokreś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 !

More Related