odstawy rawdopodobieństwo A = obszar A obszar K A B = obszar A B obszar B B = obszar B obszar K A B = A B B K A B Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 218/633
Twierdzenie Bayesa - intuicja Twierdzenie Bayesa A posteriori A priori B A = A B A B A = A B B A A B = A B B A B = A B B K A B Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 219/633
rawdopodobieństwo warunkówe 1 Niec Ania i Tomek grają w grę, w której każde z nic rzuca kostką. ierwsza rzuca Ania. Ten kto uzyska więcej oczek na kostce wygrywa. Jeżeli jest remis to gra jest powtarzana. Niec będą dane oznaczenia: A - Ania uzyskała 3 oczka B - Tomek uzyskał 1 oczko C - suma oczek to 8 A? B? C? 1/6 1/6 Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 220/633
rawdopodobieństwo warunkowe 2 Możliwyc pięć sytuacji dla C: {2,6, 3,5, 4,4, 5,3, 6,2} A i C? B i C? A i B? C = 5 6 6 = 5 36 1/36 tylko sytuacja 3,5 0 1/36 Jakie jest prawdopodobieństwo, że Ania wylosowała 5, jeżeli wygrała z Tomkiem? Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 221/633
rawdopodobieństwo warunkowe 3 Jakie jest prawdopodobieństwo, że Ania wylosowała 5 zdarzenie A, jeżeli wygrała z Tomkiem zdarzenie B? B=15/36 A i B=4/36 1, 1 2, 1 3, 1 4, 1 5, 1 6, 1 1, 2 2, 2 3, 2 4, 2 5, 2 6, 2 1, 3 2, 3 3, 3 4, 3 5, 3 6, 3 1, 4 2, 4 3, 4 4, 4 5, 4 6, 4 1, 5 2, 5 3, 5 4, 5 5, 5 6, 5 1, 6 2, 6 3, 6 4, 6 5, 6 6, 6 A=6/36 Ania Tomek A B = A B = A B B 4 36 15 36 = 4 15 Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 222/633
Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 223/633 Twierdzenie Bayesa 1 D D D prawdopodobieństwo a posteriori prawdopodobieństwo a priori 0 1,, 1 1 j i n i i n i i i D D ipoteza dane
Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 224/633 Twierdzenie Bayesa 2 rawdopodobieństwo a posteriori Szacowanie prawdopodobieństw cząstkowyc zmienne kategoryczne zmienne numeryczne...... 2 2 1 1 2 2 1 1 v a v a v a v a v a v a D n n n n T l v a T D v a i i i } : { 1 2 2 2 2 1 A A a i A i i e v a warunkowa niezależność
Idź na całość! Marilyn vos Savant Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 225/633
Idź na całość zmienić czy nie zmienić? 1 Założenie: wybieramy na początku bramkę 1 C samocód w bramce 2 D otwarcie bramki D3 C D = D C C D C = 1 3 D C = 1 D =? Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 226/633
Idź na całość zmienić czy nie zmienić? 2 Założenie: wybieramy jako gracz na początku bramkę 1 D otwarcie bramki D3 wybór bramki do umieszczenia samocodu bramka z samocodem 1 3 1 3 1 3 Bramka 1 Bramka 2 Bramka 3 1 2 1 2 1 0 1 0 prowadzący odkrywa Bramka 2 Bramka 3 Bramka 3 Bramka 2 Bramka 2 Bramka 3 D = 1 3 1 2 + 1 3 1 + 1 3 0 = 1 6 + 1 3 = 1 2 C D = 1 1 3 1 2 = 1 3 2 1 = 2 3 Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 227/633
NKB w akcji Nazwa Narodziny Ssie mleko? Liczba nóg Czy lata? Gromada mysz żywe tak 4 nie ssak lew żywe tak 4 nie ssak wieloryb żywe tak 2 nie ssak kiwi jajo nie 2 nie ptak orzeł jajo nie 2 tak ptak bocian jajo nie 2 tak ptak nietoperz żywe tak 2 tak??? Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 228/633
Naiwny klasyfikator Bayesa przykład 1 Dreszcze Katar Ból głowy Gorączka Grypa Tak Tak Brak Nie Tak Tak Nie Silny Tak Tak Nie Tak Średni Tak Tak Nie Tak Silny Tak Tak Tak Tak Średni Tak Tak Nie Nie Brak Nie Nie Tak Nie Średni Tak Nie Nie Tak Silny Nie Nie Tak Nie Średni Nie? Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 229/633
Naiwny klasyfikator Bayesa przykład 2 ipoteza: ma grypę dreszcze = tak grypa = tak katar = nie grypa = tak ból głowy = średni grypa = tak gorączka = nie grypa = tak grypa = tak 3 5 1 5 2 5 1 5 5 8 = 3 500 ipoteza: nie ma grypy dreszcze = tak grypa = nie katar = nie grypa = nie ból głowy = średni grypa = nie gorączka = nie grypa = nie grypa = nie 1 3 2 3 1 3 2 3 3 8 = 3 162 Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 230/633
Drzewa klasyfikacyjne algorytm podstawowy buduj_drzewos przykłady treningowe, A zbiór atrybutów { utwórz węzeł t korzeń przy pierwszym wywołaniu; if wszystkie przykłady w S należą do tej samej klasy K zamień t na liść z etykietą K; else { wybierz atrybut a ze zbioru A, który najlepiej klasyfikuje przykłady; przypisz węzłowi t test zbudowany na podstawie wybranego atrybutu a; for eac wartość v i atrybutu a { dodaj do węzła t gałąź odpowiadającą warunkowi a = v i S i = podzbiór przykładów z S, dla któryc a = v i if S i jest pusty dodaj do gałęzi liść z etykietą klasy, do której należy większość przypadków w S else buduj_drzewos i, A-{a} } } } Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 235/633
Algorytm ID3 dla atrybutów nominalnyc zdyskretyzowanyc podział na podstawie Information Gain faworyzacja atrybutów o dziedzinac wielowartościowyc wada: płaskie, szerokie drzewa np. przy wielu unikalnyc wartościac lokalny wybór najlepszego atrybutu brak nawrotów dąży do jak najmniejszy drzew decyzyjnyc Ockam Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 236/633
Entropia Entropia k Ent S = p i log 2 p i i=1 p i to prawdopodobieństwo przynależności do klasy i-tej estymowana przez n i /n, gdzie n i to liczba przykładów z klasą K i, a n to liczba klas k to liczba klas S to zbiór przykładów Klasyfikacja binarna Wartość entropii interpretacja: im mniejsza entropia tym więcej przykładów należy do jednej z klas Opis 0 rzykłady tylko z jednej klasy 1 o 50% przykładów z każdej klasy Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 237/633
Information Gain Entropia warunkowa dla atrybutu a Ent S a = p to liczba wartości atrybutu a S j to zbiór przykładów z wartością atrybutu v j ns j liczebność zbioru S j Interpretacja: im mniejsza wartość entropii warunkowej tym większa jednorodność podziału Information Gain ocena przyrostu informacji przy użyciu atrybutu a Gain S, a p j=1 n sj n EntS j = Ent S Ent S a przyrost = entropia rodzica suma ważonyc entropii potomków entropia rodzica powinna być duża, a suma ważonyc entropii potomków mała co oznacza dobrze odseparowane klasy Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 238/633
Gain Ratio roblemy information gain: preferuje atrybuty o dużej liczbie wartości może prowadzić do przeuczenia Rozwiązanie: gain ratio uwzględnienie rozmiarów i liczby potomków kara dla atrybutów o dużyc dziedzinac Używa split information do normalizacji przyrostu informacji Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 239/633
Gain Ratio - Split information split information współczynnik podziału gdzie p to liczba partycji liczba wartości a, natomiast a to wybrany atrybut dla podziału Duży split information = podobny rozmiar partycji Mały split information = niewielka liczba partycji zawiera większość przykładów Gain ratio: Split S a = GainRatio S, a wybieramy atrybut z największym gain ratio p j=1 = S j S log 2 S j S GainS, a SplitS, a może prowadzić do niezbalansowanyc drzew Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 240/633
Ulepszony ID3: C4.5 dopuszcza wartości numeryczne dobrze radzi sobie z wartościami nieznanymi wprowadza pruning dla radzenia sobie z szumem rozwojowa wersja to C4.8 w wece J48 komercyjny następca to C5.0 Rulequest Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 241/633
C4.5 - pruning drzewo za bardzo dopasowuje się do danyc uczącyc overfitting zbyt złożone drzewo runing zastąpienie poddrzewa liściem, gdy stwierdzimy, że oczekiwany błąd poddrzewa jest większy niż liścia. Uwaga: nie testuj na zbiorze treningnowym użyj old out Rodzaje pruningu prepruning zatrzymaj podział liścia postpruning gdy całe drzewo gotowe usuń niepotrzebne części i zastąp je liśćmi Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 247/633
repruning Oparte na wynikac testów statystycznyc Zatrzymaj podział, gdy nie ma statystycznie istotnego związku pomiędzy jakimkolwiek atrybutem a klasą w danym węźle test ci-kwadrat uwaga: w ID3 używany test ci-kwadrat wraz information gain tylko statystycznie istotne atrybuty były dostępne do wyboru przy podziale Wada: czasami warunek stopu jest za ostry, ale zdarza się to rzadko Zaleta: jest relatywnie szybki Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 248/633
Zbuduj całe drzewo Wykonaj pruning ostpruning subtree replacement usuń węzeł i umieść tam liść Strategia bottom-up, sprawdź możliwość zastąpienia poddrzewa tylko, gdy drzewa poniżej już sprawdzone subtree raising usuń węzeł w środku i rozdziel instancje do poniższyc poddrzew wolniejsze niż subtree replacement Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 249/633
RM: Decision Stump Tworzy drzewo decyzyjne na podstawie pojedynczego podziału n-krotne rozgałęzienia Najczęściej używany z AdaBoost Metody podziału information gain gain_ratio gini_index accuracy Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 250/633
RM: ID3 implementacja zbliżona do oryginalnej propozycji Quinlana arametry criterion minimal size for split minimal leaf size minimal gain Zalety łatwa czytelność modelu szybkość i nieduża wysokość modelu Wady tendencja do przeuczenia dla małyc zbiorów treningowyc tylko jeden atrybut jest testowany w danej cwili pod względem możliwości użycia do podziału Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 251/633
RM: Decision Tree działanie podobne do C4.5 arametry criterion information_gain, gain_ratio, gini_index, accuracy apply pruning confidence poziom ufności dla pessimistic error calculation for pruning apply prepruning minimal gain minimalny zysk wymagany do przeprowadzenia podziału węzła minimal leaf size minimalna liczba przykładów w liściu minimal size for split minimalna liczba przykładów dla węzła by nastąpił podział number of prepruning alternatives gdy podczas prepruningu jakiś węzeł zostanie zablokowany przed podziałem, ile innyc węzłów próbować podzielić maximal dept - maksymalna wysokość drzewa dla 1 generowany jest jeden podział Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 252/633
RM: Decision Tree weigt-based Operator złożony Umożliwia zdefiniowanie w jego wnętrzu metody wyznaczania atrybutów dla kolejnyc węzłów drzewa Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 253/633
RM: Random Tree Działa podobnie jak C4.5 Jedyna różnica to: rzy każdym podziale rozważany jest tylko losowo wybrany podzbiór atrybutów obsługuje dane nominalne i liczobowe arametry takie jak dla Decision Tree oraz: guess subset ratio wybiera log m + 1 atrybutów subset ratio ręczne ustawienie względnej liczby atrybutów Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 255/633
Gini index 1 Corrado Gini Interpretacja: stosunek obszaru pomiędzy krzywą Lorenza a prostą idealnego rozkładu do powierzcni całego obszaru pod prosta idealnego rozkładu może mierzyć nierównomierność rozkładu wartości atrybutu decyzyjnego wewnątrz węzła drzewa 80% ludzi posiada 80% docodów 80% ludzi posiada 50% docodów Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 264/633
Gini index 2 Formalnie współczynnik Giniego to: miara nierównomierności rozkładu zmiennej losowej Gini S = 1 p 2 i i=1 gdzie m to liczba klas, a p i to prawdopodobieństwo, że przykład należy do klasy C i Rozważany jest binarny podział na zbiory S 1 i S 2 Gini S, a = S 1 S Gini S 1 + S 2 S Gini S 2 ważona suma nieuporządkowania partycji Ostatecznie Gini S, a = Gini S Gini S, a Cecy wartości z przedziału <0;1>, gdzie 0 oznacza pełną równomierność nieprzystosowany dla dużej liczby klas faworyzuje partycje o podobnyc rozmiarac m Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 265/633
Operator złożony RM: MetaCost ozwala na zdefiniowanie macierzy kosztów używanej przez algorytm będący wewnątrz operatora arametry: macierz kosztów use subset for training sampling wit replacement Witold Andrzejewski & aweł Boiński, olitecnika oznańska, Wydział Informatyki 266/633