Sztuczna inteligencja : Naiwny klasyfikator Bayesa
Transkrypt
Sztuczna inteligencja : Naiwny klasyfikator Bayesa
Sztuczna inteligencja : Naiwny klasyfikator Bayesa Przemysław Juszczuk Instytut Informatyki Uniwersytetu Śląskiego 18 kwietnia 2012 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Rysunek: Klasyfikator Bayesa Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Jakie jest prawdopodobieństwo, że nowy obiekt będzie zielony/czerwony? Jaki będzie kolor nowego obiektu? Obliczenie prawdopodobieństwa a priori: prawdopodobieństwo, które możemy ustalić na podstawie obserwacji zbioru. l.zielonych prawd. a priori zielonego = l.wszystkich prawd. a priori czerwonego = l.czerwonych l.wszystkich wszystkich obiektów = 60 obiektów zielonych = 40 obiektów czerwonych = 20 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Stąd : prawd. a priori zielonego = 40 60 prawd. a priori czerwonego = 20 60 Rysunek: Klasyfikator Bayesa Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Następnym krokiem jest wybranie obiektów sąsiadujących z nowym obiektem - umiejscowienie nowego obiektu. Obliczenie ile kulek czerwonych jest w sąsiedzywie nowego obiektu Obliczenie ile kulek zielonych jest w sąsiedztwie nowego obiektu Szansa, że X będzie zielone = l.zielonychwssiedztwieX cak.l.zielonych = l.czerwonychwssiedztwieX cak.l.czerwonych Szansa, że X będzie czerwone więc mamy: 1 Szansa, że X będzie zielone = 40 3 Szansa, że X będzie czerwone = 20 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Teraz możemy wyliczyć prawdopodobieństwa: 1 1 X zielone = 46 · 40 = 60 1 2 3 X czerwone − 6 · 20 = 40 X będzie czerwone, ponieważ ma większe prawdopodobieństwo. Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Przykład: mamy zbiór danych treningowych złożony z 30 koni, 50 kotów i 20 kur. Otrzymalismy zwierzę (obiekt testowy) czworonożne. Jak określić jego gatunek? Musimy wyliczyć prawdopodobieństwo warunkowe tego, że zwierzę jest koniem, o ile ma 4 nogi, i podobnie dla kota i kury. W tym zadaniu prawdopodobieństwa te możemy wyliczyć wprost, jako odpowiednio 38 , 5/8 i 0 (gdyż 38 czworonogów jest końmi, 85 kotami i 0 kurami). Wnioskujemy, że nieznane zwierzę jest raczej kotem. Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Do jakiej klasy wyznaczone zostanie czarne kółko? (Rozpatrując różne sąsiedztwo). Rysunek: Klasyfikator Bayesa Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Rozpatrzmy przykład gry w tenisa. Tablica: Tabela danych Pogoda Słonecznie Słonecznie Pochmurnie Deszcz Deszcz Deszcz Pochmurnie Słonecznie Słonecznie Deszcz Słonecznie Pochmurnie Pochmurnie Deszcz Temperatura Gorąco Gorąco Gorąco Umiarkowanie Chłodno Chłodno Chłodno Umiarkowanie Chłodno Umiarkowanie Umiarkowanie Umiarkowanie Gorąco Umiarkowanie Przemysław Juszczuk Wilgotność Duża Duża Duża Duża Normalna Normalna Normalna Duża Normalna Normalna Normalna Duża Normalna Duża Wietrznie Nie Tak Nie Nie Nie Tak Tak Nie Nie Nie Tak Tak Nie Tak Klasa N N P P P N P N P P P P P N Sztuczna inteligencja : Naiwny klasyfikator Bayesa Czy gra w tenisa odbedzie się w następujących warunkach: Słonecznie, zimno, Duża, wieje Pochmurnie, gorąco, Duża, wieje Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Czy gra w tenisa odbedzie się w następujących warunkach: Słonecznie, zimno, Duża, wieje Pochmurnie, gorąco, Duża, wieje Decyzja: 9 P(p) = 14 5 P(n) = 14 Obliczmy: Pogoda: P(słonecznie|P) = P(Słonecznie|N) = 35 P(Pochmurnie|P) = 49 P(Pochmurnie|N) = 0 P(Deszcz|P) = 39 P(Deszcz|N) = 52 2 9 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Temperatura: Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Temperatura: P(Gorąco|P) = 92 P(Gorąco|N) = 25 P(Umiarkowanie|P) = P(Umiarkowanie|N) = P(Chłodno|P) = 93 P(Chłodno|N) = 51 4 9 2 5 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Temperatura: P(Gorąco|P) = 92 P(Gorąco|N) = 25 P(Umiarkowanie|P) = P(Umiarkowanie|N) = P(Chłodno|P) = 93 P(Chłodno|N) = 51 Wilgotność: P(Duża|P) = 39 P(Duża|N) = 45 P(Normalna|P) = 69 P(Normalna|N) = 25 4 9 2 5 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Temperatura: P(Gorąco|P) = 92 P(Gorąco|N) = 25 P(Umiarkowanie|P) = P(Umiarkowanie|N) = P(Chłodno|P) = 93 P(Chłodno|N) = 51 Wilgotność: P(Duża|P) = 39 P(Duża|N) = 45 P(Normalna|P) = 69 P(Normalna|N) = 25 Wiatr: P(Tak|P)= 39 P(Tak|N)= 53 P(Nie|P) = 69 P(Nie|N) = 52 4 9 2 5 Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa Zadanie Przygotować dowolny zbiór danych, a następnie dla tego zbioru zbudować naiwny klasyfikator Bayesa. przygotować obiekty posiadające dwa wymiary (dwa atrybuty), przedstawić rozkład obiektów na wykresie w excelu, określić dwa różne sąsiedztwa i wyznaczyć przynależność nowego obiektu do klasy decyzyjnej. Przemysław Juszczuk Sztuczna inteligencja : Naiwny klasyfikator Bayesa