1 / 51

Dwie metody

Dwie metody. Klasyczna metoda histogramu jako narzędzie do postawienia hipotezy, jaki rozkład prawdopodobieństwa pasuje do danych Indukcja drzewa decyzyjnego jako metoda wykrycia klasyfikatora ukrytego w danych trenujących. Przykład eksploracji danych o naturze statystycznej.

zarola
Download Presentation

Dwie metody

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. Dwie metody • Klasyczna metoda histogramu jako narzędzie do postawienia hipotezy, jaki rozkład prawdopodobieństwa pasuje do danych • Indukcja drzewa decyzyjnego jako metoda wykrycia klasyfikatora ukrytego w danych trenujących

  2. Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej ‘odległość’ 21 5 36 54 7 14 43 7 3 24 22 41 56 2 10 39 48 2 43 14 36 29 49 8 42 35 23 35 41 28 56 30 22 9 46 15 58 28 21 56 37 40 14 55 41 36 23 55 53 52 69 35 51 62 41 15 65 15 29 26 60 29 22 70 44 42 16 48 77 44 29 22 28 41 48 3 54 55 42 68 30 29 11 46 17 69 68 4 76 28 31 32 47 56 21 55 36 52 48 83Czy można prognozować procent odległości powyżej 40 km? Próba 2 wartości zmiennej losowej ‘odległość’ 51 8 47 36 28 31 51 36 26 56 3 11 74 21 56 30 67 56 60 44 55 39 42 22 14 39 3 48 23 38 48 46 77 56 26 6 42 22 48 70 15 39 30 38 51 38 19 15 43 59 55 38 52 69 26 35 37 52 66 55 27 44 21 58 55 29 15 22 16 12 36 48 37 29 67 22 35 28 54 8 3 17 43 31 28 30 36 9 65 2 7 21 4 30 83 29 14 47 36 50

  3. Przykład dyskretnej zmiennej losowej Rzut kostką k : X  {1, 2, 3, 4, 5, 6} Dla i {1, 2, 3, 4, 5, 6} Pr(k = i) = 1/6

  4. Drugi przykład dyskretnej zmiennej losowej Dzienna sprzedaż jednostek towaru x w pewnym sklepie. sp : X  N={0, 1, 2, . . .}

  5. Przykład ciągłej zmiennej losowej Odległość miejsca zamówienia taksówki od zajezdni. od : X  R

  6. Konstrukcja histogramu danych ciągłych Posortuj dane. Podziel posortowane dane na przedziały (w przypadku 100 danych powszechną praktyką jest wzięcie od 10 do 15 przedziałów); jeszcze bardziej powszechną praktyką jest branie takich przedziałów, że przypada co najmniej od 5 do 8 danych na przedział. W naszym przypadku po prostu bierzemy przedziały potencjalnie po 7 danych: [0,7) [7,14) [14,21) [21,28) [28,35) [35,42) [42,49) [49,56) [56,63) [63,70) [70,77) [77,84) oblicz, ile danych wpada do pierwszego przedziału ile danych wpada do drugiego przedziału … ile danych wpada do ostatniego przedziału to jest właśnie histogram początkowy łączymy przylegające przedziały, do których wpadło mniej niż 5 danych i dostajemy wynikowy histogram.

  7. Wynikowe histogramy

  8. Wynikowy histogram po złączeniu przedziałów

  9. Wykres słupkowy histogramu 1 - przedział [0,7) Pasujący do danych rozkład 2 - przedział [7,14) itd. itd. prawdopodobieństwa to prawo ukryte w danych

  10. p 0 z Wykres gęstości standaryzowanego rozkładu normalnego i interpretacja powierzchni pod krzywą Cała powierzchnia pod krzywą = 1 = 100% z=0.1787 – standaryzowana wartość 40-stu p – prawdopodobieństwo, że zmienna losowa przyjmie wartość > 40Wyliczone z tablic statystycznych p = 0.4291Prognoza procentu odległości > 40 km – 42.9%

  11. Eksploracja danych o naturze kombinatorycznej Drzewa decyzyjne

  12. Przykład 1

  13. Przykład 2

  14. Przykład 3

  15. Algorytm uczenia wejście: pewien zbiór treningowy . . . działanie . . wyjście: hipoteza ogólnej klasyfikacji dowolnego przykładu do jednej z rozważanych kategorii

  16. Kolejny przykład – tabela stanów pogody

  17. Testy  słoneczna gdy atrybutem aura obiektu x jest słoneczna taura(x) = pochmurna gdy atrybutem aura obiektu x jest pochmurna  deszczowa gdy atrybutem aura obiektu x jest deszczowa dostępne testy : taura, ttemperatura, twilgotność, twiatr

  18. Podział zbioru treningowego przez test Każdy test generuje pewien podział zbioru treningowego. Każdy zbiór tego podziału dzieli się na elementy poszczególnych kategorii. Dla testu taura otrzymujemy trzy podziały: podział obiektów x zbioru treningowego z atrybutem aura = słoneczna na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1 podział obiektów x zbioru treningowego z atrybutem aura = pochmurna na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1 podział obiektów x zbioru treningowego z atrybutem aura = deszczowa na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1

  19. P1 P2 Entropia podziału E =  -pi*log(pi) i przebiegające kategorie. pi – prawdopodobieństwo wylosowania elementu kategorii nr. i

  20. Entropia podziału rozpiętego na skończonym zbiorze X = A1A2 . . . An E =  -(|Ai|/|X|) * log(|Ai|/|X|) 1 i  n Ułamek |Ai|/|X| można interpretować jako prawdopodobieństwo wylosowania elementu kategorii nr. i ze zbioru X.

  21. Entropia testu względem zbioru treningowego Przykład – entropia testu taura ze względu na nasz zbiór treningowy stanów pogody Dla testu taura dostajemy trzy podziały: • podział obiektów x zbioru treningowego z atrybutem aura = słoneczna na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1, • podział obiektów x zbioru treningowego z atrybutem aura = pochmurna na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1, (c) podział obiektów x zbioru treningowego z atrybutem aura = deszczowa na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1.

  22. Entropia testu względem zbioru treningowego Entropia testu taura względem zbioru treningowego stanów pogody to suma ważona: entropia podziału (a)stosunek liczności zbioru na którym rozpięty jest podział (a) do liczności całego zbioru treningowego +entropia podziału (b)stosunek liczności zbioru na którym rozpięty jest podział (b) do liczności całego zbioru treningowego +entropia podziału (c)stosunek liczności zbioru na którym rozpięty jest podział (c) do liczności całego zbioru treningowego.

  23. t1 t2 Przykład

  24. Przykład drzewa decyzyjnego dla zbioru treningowego stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14} deszczowa słoneczna pochmurna taura {1,2,8,9,11} {3,7,12,13} {4,5,6,10,14} twilgotność 1 twiatr normalna duża słaby silny {9,11} {1,2,8} {4,5,10} {6,14} 1 0 0 1

  25. Idea algorytmu indukcji drzew decyzyjnych buduj (T, S, k) :jeżeliT jest pustytozwróć liść z wpisaną kategorią domniemaną k w przeciwnym przypadkujeżeliw T jest tylko jedna kategoriatozwróć liść z wpisaną tą jedyną w T kategoriąw przeciwnym przypadkujeżeliS jest pustytozwróć liść z wpisaną tą kategorią, która jest najliczniejsza w zbiorze T w przeciwnym przypadku// zbiory S i T są niepuste{ zbudowanie węzła n i jego następników, zwrócenie zbudowanego węzła n jako wyniku funkcji buduj – szczegóły na następnym slajdzie};

  26. Zbudowanie węzła n i jego następników, zwrócenie zbudowanego węzła n jako wyniku funkcji buduj { 1. utwórz kolejny węzeł n; 2. ze zbioru S wybierz, wedle przyjętego kryterium wyboru testu, test t i wpisz go do utworzonego węzła n; 3. jako k przyjmij najliczniejszą w T kategorię; 4. oblicz zbiory treningowe T1, . . ., Tm na które test t dzieli zbiór treningowy T, gdzie m jest liczbą możliwych wartości testu t; 5. dla wszystkich i = 1, . . . ,m wykonaj i-ty następnik węzła n := buduj (Ti, S - {t}, k)//wołanie rekurencyjne 6. zwróć węzeł n jako wynik funkcji buduj; }

  27. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

  28. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 taura

  29. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna taura T1={1,2,8,9,11}, 0 buduj( T1, {ttemperatura, twilgotność, twiatr}, 0)

  30. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna taura T1={1,2,8,9,11}, 0 twilgotność normalna T11= ={9,11} buduj(T11, {ttemperatura, twiatr}, 1)

  31. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna taura T1={1,2,8,9,11}, 0 twilgotność normalna T11= ={9,11} 1

  32. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna taura T1={1,2,8,9,11}, 0 twilgotność normalna duża T11= ={9,11} T12={1,2,8} 1 buduj(T12, {ttemperatura, twiatr}, 0)

  33. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna taura T1={1,2,8,9,11}, 0 twilgotność normalna duża T11= ={9,11} T12={1,2,8} 1 0

  34. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} twilgotność buduj(T2,{ttemperatura, twilgotność, twiatr},1) normalna duża T11= ={9,11} T12={1,2,8} 1 0

  35. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} twilgotność 1 normalna duża T11= ={9,11} T12={1,2,8} 1 0

  36. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 deszczowa słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} T3={4,5,6,10,14} twilgotność 1 normalna duża T11= ={9,11} T12={1,2,8} 1 0 buduj(T3,{ttemperatura,twilgotność, twiatr}, 1)

  37. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 deszczowa słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} T3={4,5,6,10,14} twilgotność 1 twiatr normalna duża słaby T11= ={9,11} T12={1,2,8} T31={4,5,10} 1 0 buduj(T31,{ttemperatura,twilgotność},1)

  38. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 deszczowa słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} T3={4,5,6,10,14} twilgotność 1 twiatr normalna duża słaby T11= ={9,11} T12={1,2,8} T31={4,5,10} 1 0 1

  39. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 deszczowa słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} T3={4,5,6,10,14} twilgotność 1 twiatr normalna duża słaby silny T11= ={9,11} T12={1,2,8} T31={4,5,10} T32={6,14} 1 0 1 buduj(T32,{ttemperatura, twilgotność},0)

  40. Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1 deszczowa słoneczna pochmurna taura T1={1,2,8,9,11}, 0 T2={3,7,12,13} T3={4,5,6,10,14} twilgotność 1 twiatr normalna duża słaby silny T11= ={9,11} T12={1,2,8} T31={4,5,10} T32={6,14} 1 0 0 1

  41. Podstawowe Pojęcia zbiór X przykładów – zbiór wszystkich stanów pogody, • zbiór C kategorii pojęcia ocena-pogody, C = {0, 1}, • pojęcie ocena-pogody : X  C , • zbiór hipotez H równy zbiorowi funkcji h : X  C definiowalnych przez pewne drzewo decyzyjne dla przyjętego zbioru dostępnych testów, • błąd hipotezy h względem pojęcia ocena-pogody err(h, ocena-pogody) = |{xX | h(x)  ocena-pogody(x) }|/ |X|

  42. Formalne definicje Formalne definicje testu, zbioru treningowego, entropii testu względem zbioru treningowego podane są w materiałach dla słuchaczy.

  43. Ocenianie błędu klasyfikatora – walidacja krzyżowa T – pewien zbiór treningowy dla pojęcia c T’  T - pewna część zbioru treningowego h – klasyfikator obliczony ze zbioru treningowego T’ Szacunkowy błąd klasyfikacji: zliczona liczba błędnych klasyfikacji na elementach x z T – T’ ---------------------------------------------------------------------------------- liczność zbioru T – T’ 1. Należy założyć, że struktura ukryta w zbiorze treningowym T dla pojęcia c dobrze przybliża strukturę ukrytą w całej przestrzeni X i w pojęciu c. Innymi słowy, zbiór T ma być w stosownym sensie reprezentatywny dla przestrzeni X i pojęcia c. 2. Zbiór T’ wybrany do walidacji krzyżowej powinien być reprezentatywny dla zbioru T – struktura ukryta w T’ powinna dobrze przybliżać strukturę ukrytą w T.

  44. Nadmierne dopasowanie Rozważmy pojęcie c : N  N  {0, 1}  1 gdy k=2n lub k=2n+1 c(n,k) =  0 w przeciwnym przypadku.

  45. Zbiór treningowy T dla pojęcia c dla zilustrowania nadmiernego dopasowania

  46. Dostępne testy  Tak gdy n, k są parzyste t1(n,k) =  Nie w przeciwnym przypadku. Tak gdy n jest parzysta i k=2n lub n jest nieparzysta t2(n,k) =  Nie w przeciwnym przypadku. Tak gdy n jest nieparzysta i k=2n+1 lub n jest parzysta t3(n,k) =  Nie w przeciwnym przypadku.Zbiór {Tak, Nie} to zbiór możliwych wartości testów t1, t2, t3.

  47. Dwa klasyfikatory t1 D1: Tak Nie 1 0 D2: t2 Tak Nie 0 t1 Nie Tak 1 t3 Tak Nie 0 1

  48. Propozycja przeprowadzenia prostych badań • Ściągnij z http://archive.ics.uci.edu/ml/ pliki z oferowanymi tam zbiorami treningowymi. Użyj także przekazanych przez nas plików heart_disease.txt, iris.txt, diabets.txt, wine.txt. • Dla każdego z badanych plików napisz program, który 2.1. wczyta zbiór treningowy z pliku 2.2. wśród zadeklarowanych funkcji programu będą funkcje reprezentujące zbiór S dostępnych testów na danych, stosownie do specyfiki konkretnego zbioru treningowego 2.3. program obliczy drzewo decyzyjne z kryterium wyboru testu przez entropię i drzewo decyzyjne z kryterium losowego wyboru testu, 2.4. zgodnie z metodą walidacji krzyżowej zostaną obliczone prawdopodobieństwa błędnej klasyfikacji dla jednego i drugiego drzewa i te prawdopodobieństwa zostaną wyświetlone jako wyniki obliczeń.

  49. Niektóre pola zastosowań metod eksploracji danych  Automatyczna klasyfikacja plam słonecznych Wsparcie diagnostyki w medycynie Bankowość i marketing  Klasyfikacja danych biologicznych . . . i wiele innych

More Related