Wstęp do sieci bayesowskich — Zadania lista 3

Transkrypt

Wstęp do sieci bayesowskich — Zadania lista 3
Wstęp do sieci bayesowskich — Zadania lista 3
Piersa Jarosław
2010-03-18
Zadanie 1 Trawnik (pole uprawne, ogródek) i zraszacz. Na podstawie obserwacji zachmurzenia rano należy
podjąć decyzję czy włączyć zraszacz. Włączenie wiąże się z kosztem zużycia wody, ale daje pewene szanse,
że trawnik nie uschnie. Z drugiej strony jeżeli danego dnia będzie padał deszcz, to również zapewni odpowiednie nawodnienie, a jest darmowy. Uschnięcie trawnika wiąże się ze stratami (koszt zasiania nowego, bliżej
niesprecyzowany związek stanu trawnika z ilością klientów, jeżeli jest to pole uprawne to zmniejszenie plonów
itp.).
Skonstruuj sieć bayesowską modelującą sytuację.
Dodatkowo można ją wzbogacić o inne węzły jak np. wysłuchanie prognozy pogody (co wiąże się z zakupem
odbiornika i opłatą abonamentu), nagroda główna w Konkursie na Najbardziej Zadbany Trawnik (wysoka,
średnia, niska, konkurs odwołany), od której zależy ostateczna wartość „nieuschniętego trawnika” itp. Inwencja
własna mile widziana.
Zadanie 2 Przemyślenia pana Zzzetowkiego:
- Jeżeli mam jutro na 8.00 to pewnie się nie wyśpię...
- Jeżeli się nie wyśpię to prawdopodobnie będę chodził nieprzytomny cały dzień...
- Ale może jeżeli zjem śniadanie, to będę bardziej przytomny...
- Jeżeli będę skoncentrowany, to (być może) będę lepiej pracował i więcej z(a)robię...
- Jeżeli dużo zarobię, to pójdę spać w poczuciu dobrze spełnionego obowiązku i (mam nadzieję) choć pojutrze
się wyśpię...
Skonstruuj sieć modelującą jeden dzień z życia pana Zzzetowskiego. Metodą „kopiuj-i-wklej” dodaj do sieci
kolejnych kilka dni i zależności pomiędzy nimi.
Przeanalizuj działanie sieci. Jak decyzje podjęte dnia pierwszego mają wpływ na to, co stanie się za dwa dni
później? Czy to co stało się dnia trzeciego (np. nie wyspał się) może być wytłumaczone przez jakieś zdarzenie
z przed kilku dni?
Dodaj do sieci węzły wypłaty odpowiadające wynagrodzeniu za popstępy w pracy. Dodaj do sieci węzeł
decyzyjne Rozrywka, które mają wpływ na postępy w pracy, ale też wiążą się z wydawaniem ciężko zarobionych
simoleonów pieniędzy.
Zadanie 3 Łańcuchy Markowa (przypomnienie).
Proces stochastyczny (ciąg zmiennych losowych) Xt , t ∈ N nazywany jest łańcuchem Markowa jeżeli rozkład
Xt , zależy od tylko od wartości Xt−1 .
P(Xt = x|Xt−1 = xt−1 , Xt−2 = xt−2 ...X0 = x0 ) = P(Xt = x|Xt−1 = xt−1 )
Niech S będzie zbiorem przyjmowanych stanów. Łańcuch Markowa jest jednorodny jeżeli w każdym kroku
prawdopodobieństwa przejścia pomiędzy dwoma ustalonymi stanami są identyczne.
∀t1 ,t2 ∀x,y P(Xt1 = x|Xt1 −1 = y) = P(Xt2 = x|Xt2 −1 = y) = pxy
Jeżeli Łańcuch Markowa jest jednorodny to macierzą przejścia nazywamy P = [pxy ]x,y∈S . Rozkładem
początkowym nazywamy rozkład P(X0 = x), dla x ∈ S
Rozkład początkowy i macierz przejścia jednoznacznie opisują jednorodny łańcuch Markowa.
Jednorodny łańcuch Markowa nazywamy nieprzywiedlnym jeżeli dla dowolnych stanów x, y z dodatnim
prawdopodobieństwem da się przejść w skończonej liczbie kroków z x do y (a także z y do x).
Okresem stanu x nazywamy najmniejszą liczbę kroków k taką, że da się dojść z x do x w k krokach z
dodatnim prawdopodobieńswem.
Nieprzywiedlny łańcuch Markowa nazywamy nieokresowym (lub aperiodycznym) jeżeli największy wspólny
dzielnik okresów wszystkich stanów wynosi jest 1.
1
Fakt Jeżeli łańcuch markowa jest nieprzywiedlny i nieokresowy to posiada on rozkład stacjonarny π, taki że
X
πx =
pyx πy
y∈S
Łańcuch Markowa w kolejnych krokach zbiega do rozkładu stacjonarnego i gdy go osiągnie, już w nim pozostanie.
Zadanie: Zasymuluj łańcuch markowa. S = {s1 , s2 , s3 , s4 } Rozkład początkowy = jednostajny (lub jednopunktowy).
.2 .8
0
0
.25 .5 .25
0
Macierz przejścia P1 :
0
.2 .6
.2
0
0 .75 .25
Macierz przejścia P2 :
.75
.5
0
0
.25
.5
0
0
0
0
.33
.1
0
0
.67
.9
Czy łańcuchy opisane przez P1 i P2 są nieprzywiedlne? Czy są nieokresowe? Jak wygląda w przybliżeniu
rozkład stacjonarny łańcuchów (o ile go mają)?
Podaj przykład macierzy przejścia MC, który jest nieprzywiedlny i nie jest niekoresowy. Jak się zachowują
„graniczne rozkłady” dla takich MC?
Zadanie 4 Błądzenie losowe. Niech dane będzie k punktów p1 ..pk . Określamy ciąg zmiennych losowych
Xn . X0 zaczyna w losowym z punktów (losowanym z rozkładu jednostajnego). Jeżeli Xn jest w punkcie pj
to Xn+1 z prawdopodobieństwem 0.5 przejdzie do pj+1 albo z prawdopodobieństwem 0.5 przejdzie do pj−1 dla
j = 2, 3, .., k − 1. Jeżeli jest to stan brzegowy to z prawdopodobieństwem 0.5 Xn+1 pozostanie w tym samym
punkcie albo z pradopodobieństwem 0.5 przejdzie do jedynego sąsiada. Skonstruuj sieć bayesowską symulującą
ten proces dla pierwszych 10 kroków.
Zadanie programostyczne Zaimplementuj algorytm wnioskowania w sieci bayesowskiej — próbnik Gibbsa
(ang. Gibbs sampler).
Sieć może być ustalona w programie, wczytana z pliku konfiguracyjnego, wygenerowana losowo, skonstruowana przez użytkownika w edytorze dołączonym do programu itd. Program powinien oferować możliwość
wprowadzenia wiedzy E tj. ustalenia odgórnie przyjętych wartości dla pewnego podzbioru węzłów sieci. Dla
określonego przez użytkownika węzła X, który nie zawiera wiedzy E (lub dla wszystkich węzłów, które nie
zawierają E) program obliczy i wyświetli rozkład prawdopodobieństwa węzła X pod warunkiem wiedzy E tj.
P(X = xi |E)
Wszelkie urozmaicenia mile widziane.
Punktacja — 1p.
Termin oddawania — 2010-05-31
Algorytm Dane: Sieć bayesowska, wiedza E, węzeł sieci X ∈
/ E.
Wynik: Pozkład prawdopodobieństwa P(X = xi |E).
1. Przypisz węzłom losowe wartości. Węzły zawierające wiedzę są zamrożone w trakcie obliczeń. Oznaczmy
poprzez V zbiór wszystkich węzłów sieci.
2. Powtarzaj wiele razy:
• Wylosuj węzeł Y (bez wiedzy).
• Wylosuj nową wartość Y zgodnie z rozkładem prawdopodobieństwa P(Y |V \ {Y }). Jest ono proporcjonalne do
Y
P(Y |Rodzice(Y )) ·
P(U |Rodzice(U ))
U :Y ∈Rodzice(U )
W tym iloczynie wszystkie węzły z wyjątkiem Y są ustalone, zatem może być on policzony lokalnie
w czasie (mniej więcej) stałym.
3. Jako prawdopodobieństwo, że X przyjmuje stan xi pod warunkiem wiedzy E zwróć procentowy udział
przypadków, w których wartość węzła X została przyjęta jako xi .
2