Top Banner
51

Dwie metody

Jan 08, 2016

Download

Documents

zarola

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. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Dwie metody
Page 2: 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

Page 3: Dwie metody

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 83

Czy 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

Page 4: Dwie metody

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

Page 5: Dwie metody

Drugi przykład dyskretnej zmiennej losowej

Dzienna sprzedaż jednostek towaru x w pewnym sklepie.

sp : X N={0, 1, 2, . . .}

Page 6: Dwie metody

Przykład ciągłej zmiennej losowej

Odległość miejsca zamówienia taksówki od zajezdni.

od : X R

Page 7: Dwie metody

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.

Page 8: Dwie metody

Wynikowe histogramy

Nr. przedziału [lewy kraniec prawy kraniec) Liczba danych

0 0 7 6

1 7 14 7

2 14 21 8

3 21 28 11

4 28 35 13

5 35 42 15

6 42 49 14

7 49 56 11

8 56 63 7

9 63 70 5

10 70 77 2

11 77 84 2

Page 9: Dwie metody

Wynikowy histogram po złączeniu przedziałów

Nr. przedziału [lewy kraniec prawy kraniec) Liczba danych

0 0 7 6

1 7 14 7

2 14 21 8

3 21 28 11

4 28 35 13

5 35 42 15

6 42 49 14

7 49 56 11

8 56 63 7

9 63 999 9

Page 10: Dwie metody

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

liczba danych

0

2

4

6

8

10

12

14

16

1 2 3 4 5 6 7 8 9 10 11 12

liczba danych

Page 11: Dwie metody

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%

0

p

z

Page 12: Dwie metody

Eksploracja danych o naturze kombinatorycznej

Drzewa decyzyjne

Page 13: Dwie metody

Przykład 1

x n k klasyfikacja1 8 16 12 10 20 13 6 11 04 6 12 15 5 3 06 4 7 07 11 22 18 20 6 09 9 18 1

10 45 90 111 1 2 112 5 10 113 8 5 014 8 4 015 4 8 116 12 24 ?17 10 15 ? . .

Page 14: Dwie metody

Przykład 2

x n k klasyfikacja

1 8 16 1

2 10 20 1

3 6 11 0

4 6 12 1

5 5 3 1

6 4 7 0

7 11 22 0

8 20 6 1

9 9 18 0

10 45 90 0

11 1 2 0

12 5 10 0

13 8 5 0

14 8 4 1

15 4 8 1

16 12 24 ?

Page 15: Dwie metody

Przykład 3

x indeks Wartość Klasyfikacja

1 1 15 Drugi

2 2 9 Pierwszy

3 3 4 Pierwszy

4 4 20 Trzeci

5 5 11 Pierwszy

6 6 15 Drugi

7 7 21 Trzeci

8 8 18 Trzeci

9 9 13 Pierwszy

10 10 17 Trzeci

11 11 2 Pierwszy

12 12 12 Pierwszy

13 13 14 Pierwszy

14 14 32 Trzeci

15 15 28 Trzeci

16 16 1 Pierwszy

17 17 10 Pierwszy

18 18 18 ?

Page 16: Dwie metody

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

Page 17: Dwie metody

Kolejny przykład – tabela stanów pogody

x aura temperatura wilgotność wiatr Klasyfikacja

1 słoneczna ciepła duża słaby 0

2 słoneczna ciepła duża silny 0

3 pochmurna ciepła duża słaby 1

4 deszczowa umiarkowana duża słaby 1

5 deszczowa zimna normalna słaby 1

6 deszczowa zimna normalna silny 0

7 pochmurna zimna normalna silny 1

8 słoneczna umiarkowana duża słaby 0

9 słoneczna zimna normalna słaby 1

10 deszczowa umiarkowana normalna słaby 1

11 słoneczna umiarkowana normalna silny 1

12 pochmurna umiarkowana duża silny 1

13 pochmurna ciepła normalna słaby 1

14 deszczowa umiarkowana duża silny 0

15 deszczowa ciepła duża słaby ?

Page 18: Dwie metody

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

Page 19: Dwie metody

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:

(a)podział obiektów x zbioru treningowego z atrybutem aura = słoneczna na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1

(b)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

Page 20: Dwie metody

Entropia podziału

E = -pi*log(pi) i przebiegające kategorie.

pi – prawdopodobieństwo wylosowania elementu kategorii nr. i

P1 P2

Page 21: Dwie metody

Entropia podziału rozpiętego na skończonym zbiorze

X = A1A2 . . . 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.

Page 22: Dwie metody

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: (a) podział obiektów x zbioru treningowego z atrybutem aura =

słoneczna na te zakwalifikowane do kategorii 0 i na te zakwalifikowane do kategorii 1,

(b) 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.

Page 23: Dwie metody

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.

Page 24: Dwie metody

Przykład

t1

t2

Page 25: Dwie metody

Przykład drzewa decyzyjnego dla zbioru treningowego stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}

{1,2,8,9,11}

słoneczna

twilgotność

normalna

{9,11}

1

duża

{1,2,8}

0

pochmurna

{3,7,12,13}

1

deszczowa

{4,5,6,10,14}

twiatr

słaby

{4,5,10}

1

silny

{6,14}

0

Page 26: Dwie metody

Idea algorytmu indukcji drzew decyzyjnych

buduj (T, S, k) : jeżeli T jest pusty to zwróć liść z wpisaną kategorią domniemaną k w przeciwnym przypadku jeżeli w T jest tylko jedna kategoria to zwróć liść z wpisaną tą jedyną w

T kategorią w przeciwnym przypadku jeżeli S jest pusty to zwróć 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};

Page 27: Dwie metody

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; }

Page 28: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

{1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

Page 29: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

Page 30: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

buduj( T1, {ttemperatura, twilgotność, twiatr}, 0)

Page 31: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

buduj(T11, {ttemperatura, twiatr}, 1)

Page 32: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

Page 33: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

buduj(T12, {ttemperatura, twiatr}, 0)

Page 34: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

Page 35: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

buduj(T2,{ttemperatura, twilgotność, twiatr},1)

Page 36: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

1

Page 37: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

1

deszczowa

T3={4,5,6,10,14}

buduj(T3,{ttemperatura,twilgotność, twiatr}, 1)

Page 38: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

1

deszczowa

T3={4,5,6,10,14}

twiatr

słaby

T31={4,5,10}

buduj(T31,{ttemperatura,twilgotność},1)

Page 39: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

1

deszczowa

T3={4,5,6,10,14}

twiatr

słaby

T31={4,5,10}

1

Page 40: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

1

deszczowa

T3={4,5,6,10,14}

twiatr

słaby

T31={4,5,10}

1

silny

T32={6,14}

buduj(T32,{ttemperatura, twilgotność},0)

Page 41: Dwie metody

Wykonanie algorytmu buduj na zbiorze treningowym stanów pogody

taura {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 1

T1={1,2,8,9,11}, 0

słoneczna

twilgotność

normalna

T11= ={9,11}

1

duża

T12={1,2,8}

0

pochmurna

T2={3,7,12,13}

1

deszczowa

T3={4,5,6,10,14}

twiatr

słaby

T31={4,5,10}

1

silny

T32={6,14}

0

Page 42: Dwie metody

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) = |{xX | h(x) ocena-pogody(x) }|/ |X|

Page 43: Dwie metody

Formalne definicje

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

Page 44: Dwie metody

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.

Page 45: Dwie metody

Nadmierne dopasowanieRozważmy pojęcie c : N N {0, 1}

1 gdy k=2n lub k=2n+1 c(n,k) = 0 w przeciwnym przypadku.

Page 46: Dwie metody

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

x n k klasyfikacja

1 4 8 1

2 6 12 1

3 3 15 0

4 6 13 1

5 2 4 1

6 10 20 1

7 3 15 0

8 8 16 1

9 5 7 0

10 12 24 1

11 13 1 0

12 22 44 1

13 16 32 1

14 14 28 1

15 5 9 0

16 30 60 1

17 9 7 0

18 7 13 0

19 11 15 0

Page 47: Dwie metody

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.

Page 48: Dwie metody

Dwa klasyfikatory

D1: t1

1

Tak

0

Nie

t2

t1

t3

1

1

0

0

D2:Tak

Tak

Tak

Nie

Nie

Nie

Page 49: Dwie metody

Propozycja przeprowadzenia prostych badań

1. Ś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.

2. Dla każdego z badanych plików napisz program, który 2.1. wczyta zbiór treningowy z pliku2.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ń.

Page 50: Dwie metody

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

Page 51: Dwie metody