Sieci bayesowskie P(F=) F P(C = F = ) P(C = F = 0) C C P(C = F = ) P(C = F = 0) M P(M = C =, C = ) P(M = C =, C = 0) P(M = C = 0, C = ) P(M = C = 0, C = 0) R P(R = C = ) P(R = C = 0) F pali papierosy C chory na chorobę C chory na chorobę M łatwo się męczy R wynik RTG płuc Sieci bayesowskie
Sieci bayesowskie F C C Prawdopodobieństwo łączne: M R P(C, C, M, R, F) = P(F) * P(C F) * P (C F) * P(M C, C) * P(R C) P(C = R =,F = 0) P(C =,R =,F = 0) = P(R =,F = 0) i= 0 j= 0 = i= 0 j= 0 k= 0 P(C= i,c =,M = j,r =,F = 0) P(C= i,c = j,m = k,r =,F = 0) Sieci bayesowskie
Sieci bayesowskie - zalety Czytelna reprezentacja wiedzy o zależnościach przyczynowych Oszczędna reprezentacja łącznego rozkładu prawdopodobieństwa Efektywne algorytmy wnioskowania Sieci bayesowskie 3
Sieci bayesowskie. Uczenie sieci uczenie struktury sieci szacowanie parametrów. Wnioskowanie na podstawie sieci Sieci bayesowskie 4
Uczenie parametrów Założenie: Znana jest struktura sieci bayesowskiej Zadanie: Wyznaczenie prawdopodobieństw warunkowych Sieci bayesowskie 5
Uczenie parametrów. Ocena częstości na podstawie pierwotnej wiedzy (opartej na naszych subiektywnych oszacowaniach lub pochodzącej z innych źródeł).. Uaktualnienie prawdopodobieństw na podstawie danych. Sieci bayesowskie 6
Uczenie parametrów, zmienna binarna rozkład beta Do przedstawienia naszej pierwotnej wiedzy o względnej częstości nadaje się funkcja gęstości beta: ρ( f ) = Γ( N) Γ( a) Γ( b) f a ( f ) b, N = a + b f względna częstość a, b, N parametry rozkładu Γ x t ( x) = t e dt 0 x i x C Γ(x) = (x - )! Sieci bayesowskie 7
Uczenie parametrów, zmienna binarna - rozkład beta 9 6 8 7 6 a=50 b=50 a=8 b= 5 4 5 4 3 3 a= b= a=3 b=3 a=0. b=0. 0 0 0, 0, 0,3 0,4 0,5 0,6 0,7 0,8 0,9 f 0 0,0 0,04 0, 0, 0,4 0,6 0,8 0,88 0,96 0,99 f Sieci bayesowskie 8
Uczenie parametrów, zmienna binarna Oznaczenia: X - zmienna losowa binarna przyjmująca wartości i F - zmienna losowa reprezentująca naszą wiedzę dotyczącą względnej częstości z jaką zmienna X przyjmuje wartość f konkretna wartość F Sieci bayesowskie 9
Uczenie parametrów, zmienna binarna Jeżeli F ma rozkład beta z parametrami a, b, N = a + b, to wartość oczekiwana E(F) = a / N; Jeżeli zmienna X przyjmuje wartości lub i P(X = f) = f, to P(X = ) = E(F); Jeśli F ma rozkład beta, to P(X = ) = a / N; Przykład: rzut monetą przypuszczamy, że na 00 rzutów monetą ok. 50 razy wypadnie orzeł, zatem zakładamy rozkład beta(f; 50,50), stąd P(X = orzeł) = 50 / (50 + 50) = 0.5 Sieci bayesowskie 0
Uczenie parametrów, zmienna binarna uaktualniania na podstawie danych Dane: ρ(f) rozkład gęstości zmiennej losowej F reprezentującej względną częstość d - zbiór danych zawierający M przykładów s liczba wystąpień pierwszej wartości w zbiorze d t - liczba wystąpień drugiej wartości w zbiorze d (M = s + t) Problem: Jak uaktualnić na podstawie danych d naszą pierwotną wiedzę reprezentowaną przez ρ(f)? Rozwiązanie: Jeżeli ρ(f) = beta(f; a, b), to ρ(f d) = beta(f; a + s, b + t). Sieci bayesowskie
Uczenie parametrów, zmienna binarna uaktualniania na podstawie danych Przykład: Rzut oszczepem wykonany 0 razy (może wbić się w ziemię lub wylądować płasko). Pierwotna wiedza: beta(f; 3, 3). Wyniki rzutów (-wbity): d={,,,,,,,,,} a = b = 3, s = 8, t = ρ(f d) = beta(f; 3 + 8, 3 + ) = beta(f;, 5) P(X = d) = E(F d) = (a + s) / (N + M) = (3 + 8) / (6 + 0) = 0.69 Sieci bayesowskie
Wybór r wartości a oraz b a = b = brak jakiejkolwiek wiedzy na temat względnej częstości lub dla zachowania obiektywizmu; zakładamy, że wszystkie wartości z przedziału [0, ] są jednakowo prawdopodobne; a, b > prawdopodobnie względna częstość wystąpienia pierwszej z dopuszczalnych wartości zmiennej wynosi ok. a/(a+b); im większe przekonanie, tym większe wartości a, b; a, b < prawdopodobnie względna częstość wystąpienia jednej z wartości zmiennej jest bardzo mała; Sieci bayesowskie 3
Uczenie parametrów - przykład trzy urny zawierające kule z numerami i ; losujemy kulę z pierwszej urny. Jeśli wylosowawo, to losujemy z urny drugiej, w przeciwnym razie z trzeciej; X, X zmienne reprezentujące wyniki dwóch losowań; beta(f ;, ) reprezentuje pierwotną wiedzę na temat częstości wylosowania kuli przy pierwszym losowaniu; beta(f ;, ) reprezentuje pierwotną wiedzę na temat częstości wylosowania kuli przy drugim losowaniu, jeżeli przy pierwszym wylosowano ; beta(f ;, ) reprezentuje pierwotną wiedzę na temat częstości wylosowania kuli przy drugim losowaniu, jeżeli przy pierwszym wylosowano ; X X P(X = ) = ½ P(X = X = ) = ½ P(X = X = ) = ½ np.: P(X =, X = ) = P(X = X = ) P(X = ) = ½ * ½ = /4 Sieci bayesowskie 4
Uczenie parametrów - przykład Dane d: X X ρ(f d) = beta(f ; + 4, + 3) ρ(f d) = beta(f ; + 3, + ) ρ(f d) = beta(f ; +, + ) X X P(X = ) = 5/9 P(X = X = ) = /3 P(X = X = ) = 3/5 np.: P(X =, X = ) = P(X = X = ) P(X = ) = 3/5 * 4/9 = 4/5 Sieci bayesowskie 5
Uczenie parametrów - przykład X zmienna mówiąca czy pacjent pali papierosy (-tak, -nie) X zmienna mówiąca czy pacjent ma chore płuca (-tak, -nie) ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) X X P(X = ) = ½ P(X = X = ) = ½ P(X = X = ) = ½ np.: P(X = ) = P(X =, X = ) + P(X =, X = ) = = P(X = X = ) P(X = ) + P(X = X = ) P(X = ) = = ½ * ½ + ½ * ½ = ½ Sieci bayesowskie 6
Uczenie parametrów - przykład Dane d: X X ρ(f d) = beta(f ; + 3, + 5) ρ(f d) = beta(f ; +, + ) ρ(f d) = beta(f ; + 3, + ) X X P(X = ) = /5 P(X = X = ) = /5 P(X = X = ) = 4/7 np.: P(X = ) = P(X =, X = ) + P(X =, X = ) = = P(X = X = ) P(X = ) + P(X = X = ) P(X = ) = = /5 * /5 + 4/7 * 3/5 = 0.5086 Sieci bayesowskie 7
Uczenie parametrów - przykład Początkowo P(X = ) = 0.5 Wśród danych uczących były 4 przykłady, dla których X = oraz 4 przykłady, dla których X = Po uaktualnieniu parametrów P(X = ) = 0.5086? Sieci bayesowskie 8
Uczenie parametrów, odpowiedni rozmiar danych - przykład Początkowa wiedza: ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) Po uaktualnieniu parametrów: ρ(f d) = beta(f ; + 3, + 5) ρ(f d) = beta(f ; +, + ) ρ(f d) = beta(f ; + 3, + ) X X P(X = ) = ½ P(X = X = ) = ½ P(X = X = ) = ½ X X P(X = ) = 5/ P(X = X = ) = /5 P(X = X = ) = 4/7 np.: P(X = ) = P(X =, X = ) + P(X =, X = ) = = P(X = X = ) P(X = ) + P(X = X = ) P(X = ) = = /5 * 5/ + 4/7 * 7/ = 0.5 Sieci bayesowskie 9
Uczenie parametrów, odpowiedni rozmiar danych Definicja: Dla każdego i oraz j funkcje gęstości są postaci beta(f ij ; a ij, b ij ). Jeżeli istnieje liczba N taka, że N ij = a ij + b ij = P(pa ij ) * N to mówimy, że sieć ma odpowiedni rozmiar danych N. P(pa ij ) prawd. tego, że węzły rodzice danego węzła były w stanie ij Dla danych z przykładu : N = + 3 = 5/ * N = 4 + 3 = 7/ * N = Sieci bayesowskie 0
Uczenie parametrów, odpowiedni rozmiar danych beta(f ; 0, 5) f = P(X = f ) beta(f ; 9, 6) f = P(X = f ) beta(f 3 ;, 4) f 3 = P(X 3 = X =,X =,f 3 ) beta(f 3 ; 3, ) f 3 = P(X 3 = X =,X =,f 3 ) beta(f 33 ;, ) f 33 = P(X 3 = X =,X =,f 33 ) beta(f 34 ;, ) f 34 = P(X 3 = X =,X =,f 34 ) P(X = ) = /3 P(X X X = ) = 3/5 P(X 3 = X =,X =) = /3 P(X 3 = X =,X =) = 3/4 P(X X 3 = X =,X =) = /3 a + b = 0 + 5 = 5 3 P(X 3 = X =,X =) = / a 3 + b 3 = + 4 = 6 P(pa 3 ) * N = P(X =, X = ) * N = /3 * 3/5 * 5 = 6 Sieci bayesowskie
Uczenie parametrów, odpowiedni rozmiar danych W jaki sposób wyrazić brak początkowej wiedzy (a=b=) zachowując odpowiedni rozmiar danych? beta(f ;, ) f = P(X = f ) beta(f ;, ) f = P(X = f ) beta(f 3 ; ¼, ¼) f 3 = P(X 3 = X =,X =,f 3 ) beta(f 3 ; ¼, ¼) f 3 = P(X 3 = X =,X =,f 3 ) beta(f 33 ; ¼, ¼) f 33 = P(X 3 = X =,X =,f 33 ) beta(f 34 ; ¼, ¼) f 34 = P(X 3 = X =,X =,f 34 ) P(X = ) = / X X P(X = ) = / X 3 P(X 3 = X =,X =) = / P(X 3 = X =,X =) = / P(X 3 = X =,X =) = / P(X 3 = X =,X =) = / Sieci bayesowskie
Uczenie parametrów, brakujące wartości Początkowa wiedza: ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) X X P(X = ) = / P(X = X = ) = / P(X = X = ) = / Dane d: X X?? P(X = X = ) = ½ P(X = X = ) = ½ Dane d : X X Sieci bayesowskie 3 Liczba wystąpień ½ ½ ½ ½
Uczenie parametrów, brakujące wartości Początkowa wiedza: ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) ρ(f ) = beta(f ;, ) Po uaktualnienie parametrów ρ(f d ) = beta(f ; + 4, + ) ρ(f d ) = beta(f ; + 5/, + 3/) Dane d : X X ρ(f d ) = beta(f ; + /, + /) Liczba wystąpień ½ ½ ½ ½ X X P(X = ) = 6 / (6 + 3) = /3 P(X = X = ) = 7/ / (7/ + 5/) = 7/ P(X = X = ) = / Sieci bayesowskie 4
Uczenie parametrów, brakujące wartości Wyznaczenie najbardziej prawdopodobnego rozkładu (algorytm EM) Powtarzaj na przemian k razy:. oblicz oczekiwane wartości s ij oraz t ij na podstawie rozkładu prawdopodobieństw i danych d (expectation). oblicz wartości f ij na podstawie s ij oraz t ij (maximization) Można w ten sposób wyznaczyć f maksymalizujące ρ(f d). Problem: ryzyko znalezienia maksimum lokalnego. Sieci bayesowskie 5
Uczenie parametrów, zmienne dyskretne o dowolnej liczbie wartości rozkład Dirichleta Γ( N ) a a ρ( f, f,..., fr ) = f f r Γ( a ) 0 f k, r k= k= f k k =, r k = a k... = N f ar r r liczba różnych wartości (dla zmiennej binarnej r = i mamy rozkład beta) a i liczba wystąpień i-tej wartości Sieci bayesowskie 6
Uczenie parametrów, zmienne dyskretne rozkład Dirichleta Jeżeli zmienne F, F,...,F r mają rozkład Dirichleta z parametrami a, a...,a r, a + a +... + a r = N, to dla k r E( F k P( X ) Jeżeli zmienna losowa X przyjmuje wartości,,...,r; i dla zmiennych losowych F, F,..., F r, P(X = k f k ) = f k, to = = k) ak N = ak N Sieci bayesowskie 7
Uczenie parametrów, zmienne dyskretne rozkład Dirichleta Przykład Rzut kostką Dir(f, f, f 3, f 4, f 5 ; 50, 50, 50, 50, 50, 50) P(X = 4) = 50 / 300 = / 6 Przykład Kolor skarpetek (białe, czarne, kolorowe) Dir(f, f ;,, 4) P(X = białe) = / ( + + 4) = / 4 P(X = kolorowe) = 4 / ( + + 4) = / Sieci bayesowskie 8
Uczenie parametrów Zmienna X przyjmuje 3 wartości, zmienna X przyjmuje 4 wartości ρ(f, f ) = Dir(f, f ; 4, 8, 0) ρ(f, f, f 3 ) = Dir(f, f, f 3 ;,,, ) ρ(f, f, f 3 ) = Dir(f, f, f 3 ;, 4,, ) ρ(f 3, f 3, f 33 ) = Dir(f 3, f 3, f 33 ;, 3, 4, ) X X P(X = ) = / P(X = X = ) = ¼ P(X = X = ) = ¼ P(X = ) = 4/ P(X = X = ) = ¼ P(X = X = ) = ½ P(X = 3) = 5/ P(X = 3 X = ) = ¼ P(X = 3 X = ) = /8 P(X = 4 X = ) = ¼ P(X = 4 X = ) = /8 P(X = X = 3) = /0 P(X = X = 3) = 3/0 P(X = 3 X = 3) = /5 P(X = 4 X = 3) = /5 Sieci bayesowskie 9
Uczenie parametrów, zmienne dyskretne uaktualnianie na podstawie danych Dane: ρ(f,f,...,f r- ) rozkład gęstości zmiennych reprezentujących względną częstość d - zbiór danych zawierający M przykładów s i liczba wystąpień i-tej wartości w zbiorze d Problem: Jak uaktualnić na podstawie danych d naszą pierwotną wiedzę reprezentowaną przez ρ(f,f,...,f r- )? Rozwiązanie: Jeżeli ρ(f, f,..., f r- ) = Dir(f, f,..., f r- ; a, a,..., a r ), to ρ(f, f,..., f r- d) = Dir(f, f,..., f r- ; a + s, a + s,..., a r + s r ). Sieci bayesowskie 30
Metody uczenia struktury sieci - podział Ze względu na sposób optymalizacji: Dokładne (przeglądanie wszystkich możliwych sieci w celu wybrania optymalnej, wykonalne jedynie w przypadku małej liczby zmiennych). Przybliżone (nie gwarantują optymalnego rozwiązania, ale przeważnie prowadzą do rozwiązań bliskich optymalnemu). Ze względu na wynik końcowy: Wybór modelu (wyznaczenie jednej sieci). Uśrednianie modelu (wyznaczenie wielu sieci a następnie uśrednianie prawdopodobieństw podczas wnioskowania). Sieci bayesowskie 3
Uczenie struktury sieci bayesowskiej miara jakości Im większe prawdopodobieństwo P(G d), tym lepsza sieć G (d dane uczące). P ( G d) = P( d G) P( G) P( d) Miara jakości sieci G zbudowanej na podstawie danych d: score B ( d, G) = P( d G) = ( G ) n q ( G) r ( G) i ij ijk ( G) ( G) i= j= Γ( Nij + M ij ) k= Γ( i Γ( N ) Γ( a a + s ( G) ijk ( G) ijk ) ) n - liczba węzłów (zmiennych) q i liczba kombinacji wartości przyjmowanych przez rodziców węzła i-tego r i liczba wartości przyjmowanych przez zmieną (węzeł) i-tą M ij liczba przykładów uczących, dla których rodzice węzła i-tego przyjmują j-tą kombinację wartości s ijk liczba przykładów uczących, dla których zmienna i-ta przyjmuje wartość k-tą a jej rodzice j-tą Chcemy znaleźć sieć G maksymalizującą powyższą miarę. Sieci bayesowskie 3
Uczenie struktury sieci bayesowskiej miara jakości Dane d: X X G X X P(X = ) = 7/ P(X = X = ) = 5/7 P(X = X = ) = /5 Γ(4) Γ( + 5) Γ( + 3) Γ() Γ( + 4) Γ( + ) Γ() Γ( + ) Γ( + ) P( d G) = ( )( )( ) = 7.5 0 Γ(4 + 8) Γ() Γ() Γ( + 5) Γ() Γ() Γ( + 3) Γ() Γ() G P ( G d) = P( d G) P( G) P( d) X X 6 P( d G) = 6.746 0 6 P( d G) P( G) P ( G d) = P( d) Sieci bayesowskie 33
Uczenie struktury sieci, metody przybliżone Przeszukiwana jest przestrzeń zawierająca wszystkie kandydujące rozwiązania. Definiuje się zbiór operacji przekształcających jedno rozwiązanie w drugie. Sieci bayesowskie 34
Uczenie struktury sieci, metody przybliżone Lokalna ocena sieci w węźle X i : score B ( d, X i, PA ) = i ( PA) ( PA) ( ) ( ) Γ( ) r PA PA Nij Γ( aijk + sijk ( PA) ( PA) ( PA) j= Γ( Nij + M ij ) k = Γ( aijk ) q i i ) score B ( d, G) = n i= score B ( d, X i, PA ) i Sieci bayesowskie 35
Uczenie sieci, metody przybliżone - algorytm K Założenie: dany jest porządek węzłów (jeśli X i jest przed X j to nie jest dozwolona krawędź X j X i ). for i = to n {dla każdego węzła} PA i = {PA i rodzice węzła i-tego} P = score B (d,x i,pa i ) repeat znajdź Y maksymalizujący score B (d,x i,pa i {Y}) P = score B (d,x i,pa i {Y}) if P > P then P = P PA i = PA i {Y} {dodanie nowego rodzica} end until nie znaleziono węzła Y, dla którego P > P end Sieci bayesowskie 36
Uczenie sieci, metody przybliżone - algorytm nie wymagający uporządkowania węzłóww Założenie: dozwolone są następujące operacje: dodanie krawędzi między dwoma węzłami, usunięcie krawędzi, zmiana kierunku krawędzi (pod warunkiem, że nie powstaje cykl) repeat if w sąsiedztwie sieci G istnieje sieć o większym score B (d,g) then zastąp G siecią o największej wartości score B (d,g) end until żadna z operacji nie zwiększa wartości score B (d,g) Sąsiedztwo sieci G wszystkie sieci, które można otrzymać z sieci G wykonując jedną z dozwolonych operacji. Problem: możliwość znalezienia lokalnego maksimum Sieci bayesowskie 37
Równoważność sieci ρ(f d) = beta(f ; + 4, + 3) ρ(f d) = beta(f ; + 3, + ) ρ(f d) = beta(f ; +, + ) X X P(X =)=6/ P(X = X =)=/3 P(X = X =)=3/5 P(X =,X =) = P(X = X =) P(X =) = = /3 * 6/ = 4/ P(X =,X =) = P(X = X =) P(X =) = = /3 * 6/ = / P(X =,X =) = P(X = X =) P(X =) = = 3/5 * 5/ = 3/ P(X =,X =) = / Dane d: X X ρ(f d) = beta(f ; + 5, + ) ρ(f d) = beta(f ; + 3, + ) ρ(f d) = beta(f ; +, + ) X X P(X = X =)=4/7 P(X =)=7/ P(X = X =)=/ P(X =,X =) = P(X = X =) P(X =) = = 4/7 * 7/ = 4/ P(X =,X =) = P(X = X =) P(X =) = = / * 4/ = / P(X =,X =) = P(X = X =) P(X =) = = 3/7 * 7/ = 3/ P(X =,X =) = / jeden rozkład prawdopodobieństwa różne sieci Sieci bayesowskie 38
X P(X =)=4/7 X P(X = X =)=3/4 P(X 3 = X =)=/ P(X = X =)=/3 P(X 3 = X =)=/3 Równoważność sieci Zbiór uczący: X X X 3 X 3 X X X 3 P(X =,X =,X 3 =) =? P(X = X =)=3/5 P(X = X =)=/ P(X =)=5/7 P(X 3 = X =)=/ P(X 3 = X =)=/3 P(X =) * P(X = X =) * P(X 3 = X =) = = 4/7 * 3/4 * /= 3/4 P(X =) * P(X = X =) * P(X 3 = X =) = = 5/7 * 3/5 * / = 3/4 P(X =,X =,X 3 =) =? P(X =) * P(X = X =) * P(X 3 = X =) = = 3/7 * /3 * /3= /... P(X =) * P(X = X =) * P(X 3 = X =) = = /7 * / * /3 = / jeden rozkład prawdopodobieństwa różne sieci Sieci bayesowskie 39
Równoważność sieci Twierdzenie: dwie sieci zawierające ten sam zbiór zmiennych są równoważne, gdy mają te same krawędzie (niezależnie od ich kierunku) oraz takie same połączenia typu X Y Z w przypadku, gdy nie ma krawędzi między X i Z [Pearl 989]. () () (3) A A A B C B C B C D D D E F E F E F () i () są równoważne () i (3) nie są równoważne () i (3) nie są równoważne Sieci bayesowskie 40
Równoważność sieci - wzorzec Wzorzec klasy sieci równoważnych sieć, która ma takie same połączenia jak sieci w tej klasie i tylko połączenia wspólne dla wszystkich sieci tej klasy są skierowane. A A A B C B C B C D D D A E E E B C klasa sieci równoważnych wzorzec D E Sieci bayesowskie 4
Poszukiwanie sieci czy wzorca? Jeśli w klasach sieci równoważnych jest dużo sieci, to znacznie dłuższy czas poszukiwania (strata czasu, ponieważ wszystko jedno którą sieć z klasy sieci równoważnych wybierzemy). Traktowanie wszystkich sieci jak jednakowo prawdopodobnych (jeśli w klasie jest dużo sieci, to duże szanse na wybór jednej z nich różne rozkłady łączne nie są traktowane jednakowo). Algorytmy znajdujące najlepsze wzorce Sieci bayesowskie 4
Uczenie struktury sieci, metody przybliżone algorytm znajdujący najlepszy wzorzec graf częściowo skierowany zawiera krawędzie skierowane i nieskierowane; A A A B C B C B C D D D sieć G odpowiadająca grafowi częściowo skierowanemu g wszystkie krawędzie skierowane w g są skierowane w G, G nie zawiera połączeń typu X Y Z (bez krawędzi między X a Z) innych niż w g; B A C B A C D D każdy wzorzec sieci jest grafem częściowo skierowanym, ale nie każdy graf częściowo skierowany jest wzorcem; Sieci bayesowskie 43
Uczenie struktury sieci, metody przybliżone algorytm znajdujący najlepszy wzorzec Zestaw operacji przekształcających graf częściowo skierowany g w g: dodanie krawędzi (dowolnie skierowanej lub nieskierowanej) między dwoma węzłami usunięcie krawędzi nieskierowanej usunięcie lub zmiana kierunku krawędzi skierowanej zamiana połączenia typu X-Y-Z (nie ma krawędzi między X a Z) na X Y Z Przekształcanie jednego wzorca w drugi: wykonaj jedną z operacji zmieniając wzorzec g na g {g może nie być wzorcem} znajdź sieć G odpowiadającą grafowi g if znaleziono sieć G then znajdź wzorzec g odpowiadający sieci G end if Sieci bayesowskie 44
Uczenie struktury sieci, metody przybliżone algorytm znajdujący najlepszy wzorzec B C D A E ) usunięcie krawędzi ) znalezienie sieci 3) znalezienie wzorca B C B C B C D A D A D A E E E Sieci bayesowskie 45
Uczenie struktury sieci, metody przybliżone algorytm znajdujący najlepszy wzorzec repeat if w sąsiedztwie wzorca gp istnieje wzorzec o większym score B (d,gp) then zastąp dany wzorzec wzorcem poprawiającym score B (d,gp) najbardziej end until żadna z operacji nie zwiększa wartości score B (d,g) W przeciwieństwie do dwóch poprzednich algorytmów, tym razem nie można uaktualniać miary score B lokalnie. Sieci bayesowskie 46
Uczenie struktury sieci, metody przybliżone - porównanie Metody poszukujące wzorca przeważnie prowadzą do lepszych sieci niż metody znajdujące sieć. Metody poszukujące wzorca są wolniejsze. Jeżeli znane jest uporządkowanie zmiennych wymagane przez algorytm K, to algorytm ten znajduje sieci często lepsze niż inne metody. Sieci bayesowskie 47
Wnioskowanie X P(x) Y P(y x) P(y x) P(y) = P(y x) P(x) + P(y x) P(x) Z P(z y) P(z y) P(z) = P(z y) P(y) + P(z y) P(y) W P(w z) P(w z) P(w) = P(w z) P(z) + P(w z) P(z) Sieci bayesowskie 48
Wnioskowanie =x P(y x) =? P(z x) =? P(w x) =? X P(x) Y P(y x) P(y x) Z P(z y) P(z y) P(z x) = P(z y,x) P(y x) + P(z y,x) P(y x) = = P(z y) P(y x) + P(z y) P(y x) W P(w z) P(w z) P(w x) = P(w z,x) P(z x) + P(w z,x) P(z x) = = P(w z) P(z x) + P(w z) P(z x) Sieci bayesowskie 49
Wnioskowanie X P(x) P(x w) = P(w x) P(x) / P(w) P(w x) = P(w y) P(y x) + P(w y) P(y x) Y P(y x) P(y x) P(y w) = P(w y) P(y) / P(w) P(w y) = P(w z) P(z y) + P(w z) P(z y) Z P(z y) P(z y) P(z w) = P(w z) P(z) / P(w) W P(w z) P(w z) =w P(z w) =? P(y w) =? P(x w) =? Sieci bayesowskie 50
Wnioskowanie P(x w) X P(y w) P(x) P(z w) Y P(y x) P(y x) Z P(z x) P(z x) P(t w) W P(w y) P(w y) P(t z) P(t z) T =w Sieci bayesowskie 5