Algorytmy stochastyczne Laboratorium 13 – 15, Uczenie Strukturalne

Transkrypt

Algorytmy stochastyczne Laboratorium 13 – 15, Uczenie Strukturalne
Algorytmy stochastyczne
Laboratorium 13 – 15, Uczenie Strukturalne
Jarosław Piersa
2014-05-30
Uwagi do Tetrada
Pakiet Tetrad V można pobrać ze strony http://www.phil.cmu.edu/projects/tetrad. Do uruchomienia wymagane jest
środowisko Javy.
Uwaga! Przed pracą z Tetradem proszę zmienić locale systemu na angielskie. Inaczej system nie potrafi sparsować
liczb zmiennoprzecinkowych.
Na Windowsach: Start → Ustawienia → Panel Sterowania → Ustawienia Regionalne. Na Linuxie: wybór ustawień
językowych na poziomie logowania. Można również zmienić na poziomie terminalu
env LANG=en\_US
javaws tetrad*.jnlp
1
Zadania na zajęcia
Zadanie 1
Uzupełnij podane szkielety strukturalne do pełnych sieci (o ile to możliwe) Rys. 1(a).
Zadanie 2
Z poniższych sieci wyodrębnij szkielety strukturalne, Rys. 1(b).
(a) Uzupełnij podane szkielety strukturalne do pełnych sieci
(b) Wyznacz szkielety strukturalne dla podanych sieci
Zadanie 3
Dane są następujące próbki uczące:
• (AB) = (tt), (tn) × 2, (nt) × 3, (nn) × 6
• (AB) = (tt), (tn) × 2, (nt) × 3, (nn) × 6
1
Sieć bayesowska posiada węzły A i B, każdy przyjmuje stany „t” lub „n”. Struktura sieci nie jest znana. Wykorzystaj listy
do uczenia strukturalnego.
Zadanie 4
Dane są następujące próbki uczące:
• (ABC) = (ttt) × 3, (tnt) × 3, (ntt), (nnn) × 3, (tnn) × 9, (ttn) × 3, (nnt), (ntn)
• (ABC) = (tnt), (ttt), (nnt), (ttt), (nnn), (ttn), (nnn)(ttn)
• (ABC) = (tnt) × 9, (ttn) × 2, (tnn) × 1, (nnt) × 2, (ntn) × 4, (nnn) × 2
• (ABC) = (ttt), (ttn), (tnt) × 2, (tnn) × 4, (ntt), (nnt) × 2, (nnn)
• (ABC) = (ttt) × 2, (ttn) × 1, (tnt) × 2, (tnn) × 1, (ntt) × 2, (ntn) × 1, (nnt) × 2, (nnn) × 1
• (ABC) = (ttt) × 2, (tnn) × 2, (ntn) × 2, (nnt) × 2
Sieć bayesowska posiada węzły A, B i C, każdy przyjmuje stany „t” lub „n”, struktura sieci nie jest znana.
Czy na podstawie powyższych list można stwierdzić, że A i B są niezależne? Czy A i B są niezależne pod warunkiem C?
Wykorzystaj listy do uczenia strukturalnego.
Zadanie 5
W programie Tetrad lub Genie zbuduj sieć na podstawie danych z zadań 3 i 4. Porównaj wyniki.
Uwaga! Liczbę danych przemnóż przez ok 100.
2
Zadania programistyczne
Algorytm PC:
Zaimplementuj algorytm konstrukcji szkieletu strukturalnego sieci bayesowskiej. Dane powinny być czytane z pliku tekstowego.
Punktacja — 2 do 3 p.
Algorytm K2
Zaimplementuj algorytm uczenia konstrukcji sieci bayesowskiej na podstawie danych K2. Reszta jak wyżej.
Punktacja — 2 do 3p.
Literatura
[1] R. Neapolitan, Learning bayesian networks,
[2] P. Judea, Probabilistic reasoning and intelligent systems. Networks of plausible inference, Morgan Kaufman Inc. 1998.
[3] GeNIe, http://genie.sis.pitt.edu/, Decision Systems Laboratory of the University of Pittsburgh, dostęp 2014-04.
[4] Tetrad IV, http://www.phil.cmu.edu/projects/tetrad/, Carnegie Mellon University, dostęp 2014-04.
2