by Neng-Fa Zhou1 PRISM: A Probabilistic Language for Modeling and Learning Joint work with Taisuke Sato (Tokyo Institute of Technology)
by Neng-Fa Zhou2 What is PRISM? 4 PRISM = Probabilistic Prolog 4 Three execution modes –Sample execution –Probability calculation –Learning direction(D):- msw(coin,Face), (Face==head->D=left;D=right).
by Neng-Fa Zhou3 Features 4 Use logic programs to describe probabilistic choices and their consequences 4 Probability distributions (parameters of switches) can be learned automatically from samples 4 Tabling is used in probabilistic computations and learning (resembles dynamic programming) 4 A high level yet efficient modeling language (Subsumes HMM, PCFG, and discrete Bayesian networks)
by Neng-Fa Zhou4 Applications 4 Probabilistic modeling and learning for problem domains where randomness or uncertainty is involved –Stochastic language processing –Gene sequence analysis –Game analysis –Optimization (e.g., performance tuning)
by Neng-Fa Zhou5 PRISM : the Language 4 Probability distributions and switches Sample execution: sample(Goal) Probability calculation: prob(Goal,P) Learning: learn(Facts) values(coin,[head:0.5,tail:0.5]). direction(D):- msw(coin,Face), (Face==head->D=left;D=right).
by Neng-Fa Zhou6 Assumptions 4 Distribution assumption Let values(I,[o 1 :p 1,…,o n :p n ]) be a sample space declaration. p i = 1 msw(I,V) always succeeds if V is a variable. 4 Independence assumption 4 Exclusiveness assumption prob(A B) = prob(A)*prob(B) prob(A B) = prob(A)+prob(B)
by Neng-Fa Zhou7 Learning Given a set of observed facts F, determine the probability distributions for the switches to maximize the likelihood of F.
by Neng-Fa Zhou8 Using Tabling (Dynamic Programming) in Learning hmm(L) :- msw(init,Si), hmm(Si,L). hmm(S,[]). hmm(S,[C|L]) :- msw(out(S),C), msw(tr(S),NextS), hmm(NextS,L). values(init,[s0,s1]). values(out(_),[a,b]). values(tr(_),[s0,s1]). hmm([a,b,a]) hmm(s1,[a,b,a]) hmm(s0,[b,a])hmm(s1,[b,a]) hmm(s0,[a])hmm(s1,[a]) hmm(s0,[]) hmm(s0,[a,b,a]) hmm(s1,[])
by Neng-Fa Zhou9 Papers 1.T. Sato: A Statistical Learning Method for Logic Programs with Distribution Semantics, ICLP T. Sato and Y. Kameya: Parameter Learning of Logic Programs for Symbolic-statistical Modeling, Journal of Artificial Intelligence Research, N.F. Zhou, T. Sato, K. Hasida: Toward a High- performance System for Symbolic and Statistical Modeling, Proc. IJCAI Workshop on Learning Statistical Models from Relational Data, pp , 2003.