BIOL 301 Guest Lecture: Reasoning Under Uncertainty (Intro to Bayes Networks) Simon D. Levy CSCI Department 8 April 2010
Review of Bayes’ Rule From the Product Rule: P(A|B) = P(A & B) / P(B) P(A &B) = P(A|B) * P(B) = P(B|A) * P(A) Rev. Thomas Bayes ( ) We derive Bayes’ Rule by substitution: P(A|B) = P(A & B) / P(B) = P(B|A) * P(A) / P(B)
Real-World Problems May Involve Many Variables
Real-World Problems May Involve Many Variables
Variables Are Typically Oberserved Simultaneously (Confounded) FeverAcheVirus P NoNoNo.950 NoNoYes.002 NoYesNo.032 NoYesYes.002 YesNoNo.002 YesNoYes.001 YesYesNo.010 YesYesYes.001 So how do we compute P(V=Yes), P(F=Yes & A=No), etc.?
Marginalization FeverAcheVirus P NoNoNo.950 NoNoYes.002 NoYesNo.032 NoYesYes.002 YesNoNo.002 YesNoYes.001 YesYesNo.010 YesYesYes.001 ______ Sum =.006 P(V=Yes):
Marginalization FeverAcheVirus P NoNoNo.950 NoNoYes.002 NoYesNo.032 NoYesYes.002 YesNoNo.002 YesNoYes.001 YesYesNo.010 YesYesYes.001 ______ Sum =.003 P(F=Yes & A=No):
Combinatorial Explosion (The “Curse of Dimensionality”) Assuming (unrealistically) only two values (Yes/No) per variable: # Variables# of Rows in Table : 20 1,048,576
Solution: Local Causality + Belief Propagation
Local Causality
Recover Joint From Prior & Posterior BEP(A) TT.95 TF.94 FT.29 FF.001 P(B).001 P(E).002 B E A Prob T T T.001*.002*.95 = T T F.001*.002*.05 = T F T.001*.998*.94 = T F F.001*.998*.06 = F T T.999*.002*.29 = F T F.999*.002*.71 = F F T.999*.998*.001 = F F F.999*.998*.999 =
Belief Propagation Consider just B → A → J P(J=T | B=T) = P(J=T | A=T) * P(A=T | B=T) Then use Bayes’ Rule and marginalization to answer more sophisticated queries like P(B=T | J=F & E=F & M=T)
Multiply-Connected Networks Wet Grass Cloudy Rain Sprinkler
Clustering (“Mega Nodes”) Cloudy Sprinkler Rain Sprinkler Rain Wet Grass Sprinkler Rain
A B D F E C G H Junction Tree Algorithm (Huang & Darwiche 1994)
A B D F E C G H A B D F E C G H “Moralize””
A B D F E C G H Junction Tree Algorithm (Huang & Darwiche 1994)
A B D F E C G H A B D F E C G H Triangulate
Junction Tree Algorithm (Huang & Darwiche 1994) A B D F E C G H
A B D F E C G H ABDADE DEF ACECEG EGH AD DE AECE EG
“Message-Passing” ABDADE DEF ACECEG EGH AD DE AECE EG Observe A=T
“Message-Passing” ABDADE DEF ACECEG EGH AD DE AECE EG Pick a cluster containing A:
“Message-Passing” ABDADE DEF ACECEG EGH AD DE AECE EG Pass messages to propagate evidence: