P ROBABILISTIC I NFERENCE
A GENDA Conditional probability Independence Intro to Bayesian Networks
R EMEMBER : P ROBABILITY N OTATION L EAVES V ALUES I MPLICIT P(A B) = P(A)+P(B)- P(A B) means P(A=a B=b) = P(A=a) + P(B=b) -P(A=a B=b) For all a Val(A) and b Val(B) A and B are random variables. A=a and B=b are events. Random variables indicate many possible combinations of events
C ONDITIONAL P ROBABILITY P(A,B) = P(A|B) P(B) = P(B|A) P(A) P(A|B) is the posterior probability of A given knowledge of B Axiomatic definition: P(A|B) = P(A,B)/P(B)
C ONDITIONAL P ROBABILITY P(A|B) is the posterior probability of A given knowledge of B “For each value of b: given that I know B=b, what do I believe about A?” If a new piece of information C arrives, the agent’s new belief (if it obeys the rules of probability) should be P(A|B,C)
C ONDITIONAL D ISTRIBUTIONS StateP(state) C, T, P0.108 C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P P(Cavity|Toothache) = P(Cavity Toothache)/P(Toothache) = ( )/( ) = 0.6 Interpretation: After observing Toothache, the patient is no longer an “average” one, and the prior probability (0.2) of Cavity is no longer valid P(Cavity|Toothache) is calculated by keeping the ratios of the probabilities of the 4 cases of Toothache unchanged, and normalizing their sum to 1
U PDATING THE B ELIEF S TATE The patient walks into the dentists door Let D now observe evidence E: Toothache holds with probability 0.8 (e.g., “the patient says so”) How should D update its belief state? StateP(state) C, T, P0.108 C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P 0.576
U PDATING THE B ELIEF S TATE P(Toothache|E) = 0.8 We want to compute P(C T P|E) = P(C P|T,E) P(T|E) Since E is not directly related to the cavity or the probe catch, we consider that C and P are independent of E given T, hence: P(C P|T,E) = P(C P|T) P(C T P|E) = P(C P T) P(T|E)/P(T) StateP(state) C, T, P0.108 C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P 0.576
U PDATING THE B ELIEF S TATE P(Toothache|E) = 0.8 We want to compute P(C T P|E) = P(C P|T,E) P(T|E) Since E is not directly related to the cavity or the probe catch, we consider that C and P are independent of E given T, hence: P(C P|T,E) = P(C P|T) P(C T P|E) = P(C P T) P(T|E)/P(T) StateP(state) C, T, P0.108 C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P These rows should be scaled to sum to 0.8 These rows should be scaled to sum to 0.2
U PDATING THE B ELIEF S TATE P(Toothache|E) = 0.8 We want to compute P(C T P|E) = P(C P|T,E) P(T|E) Since E is not directly related to the cavity or the probe catch, we consider that C and P are independent of E given T, hence: P(C P|T,E) = P(C P|T) P(C T P|E) = P(C P T) P(T|E)/P(T) StateP(state) C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P These rows should be scaled to sum to 0.8 These rows should be scaled to sum to 0.2
I SSUES If a state is described by n propositions, then a belief state contains 2 n states (possibly, some have probability 0) Modeling difficulty: many numbers must be entered in the first place Computational issue: memory size and time
I NDEPENDENCE OF EVENTS Two events A=a and B=b are independent if P(A=a B=b) = P(A=a) P(B=b) hence P(A=a|B=b) = P(A=a) Knowing B=b doesn’t give you any information about whether A=a is true
I NDEPENDENCE OF RANDOM VARIABLES Two random variables A and B are independent if P(A,B) = P(A) P(B) hence P(A|B) = P(A) Knowing B doesn’t give you any information about A [This equality has to hold for all combinations of values that A and B can take on, i.e., all events A=a and B=b are independent]
S IGNIFICANCE OF INDEPENDENCE If A and B are independent, then P(A,B) = P(A) P(B) => The joint distribution over A and B can be defined as a product of the distribution of A and the distribution of B Rather than storing a big probability table over all combinations of A and B, store two much smaller probability tables! To compute P(A=a B=b), just look up P(A=a) and P(B=b) in the individual tables and multiply them together
C ONDITIONAL I NDEPENDENCE Two random variables A and B are conditionally independent given C, if P(A, B|C) = P(A|C) P(B|C) hence P(A|B,C) = P(A|C) Once you know C, learning B doesn’t give you any information about A [again, this has to hold for all combinations of values that A,B,C can take on]
S IGNIFICANCE OF C ONDITIONAL INDEPENDENCE Consider Rainy, Thunder, and RoadsSlippery Ostensibly, thunder doesn’t have anything directly to do with slippery roads… But they happen together more often when it rains, so they are not independent… So it is reasonable to believe that Thunder and RoadsSlippery are conditionally independent given Rainy So if I want to estimate whether or not I will hear thunder, I don’t need to think about the state of the roads, just whether or not it’s raining!
Toothache and PCatch are independent given Cavity, but this relation is hidden in the numbers! [Quiz] Bayesian networks explicitly represent independence among propositions to reduce the number of probabilities defining a belief state StateP(state) C, T, P0.108 C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P C, T, P 0.576
B AYESIAN N ETWORK Notice that Cavity is the “cause” of both Toothache and PCatch, and represent the causality links explicitly Give the prior probability distribution of Cavity Give the conditional probability tables of Toothache and PCatch Cavity ToothachePCatch 5 probabilities, instead of 7 P(C T P) = P(T P|C) P(C) = P(T|C) P(P|C) P(C) Cavity Cavity P(T|C) P(Cavity)0.2 Cavity Cavity P(P|C)
C ONDITIONAL P ROBABILITY T ABLES Cavity Toothache P(Cavity)0.2 Cavity Cavity P(T|C) PCatch Columns sum to 1 If X takes n values, just store n-1 entries P(C T P) = P(T P|C) P(C) = P(T|C) P(P|C) P(C) Cavity Cavity P(T|C) P( T|C) Cavity Cavity P(P|C)
S IGNIFICANCE OF C ONDITIONAL INDEPENDENCE Consider Grade(CS101), Intelligence, and SAT Ostensibly, the grade in a course doesn’t have a direct relationship with SAT scores but good students are more likely to get good SAT scores, so they are not independent… It is reasonable to believe that Grade(CS101) and SAT are conditionally independent given Intelligence
BAYESIAN N ETWORK Explicitly represent independence among propositions Notice that Intelligence is the “cause” of both Grade and SAT, and the causality is represented explicitly Intel. Grade P(I=x) high 0.3 low 0.7 SAT 6 probabilities, instead of 11 P(I,G,S) = P(G,S|I) P(I) = P(G|I) P(S|I) P(I) P(G=x|I)I=lowI=high ‘A’ ‘B’ ‘C’ P(S=x|I)I=lowI=high low high
S IGNIFICANCE OF B AYESIAN N ETWORKS If we know that variables are conditionally independent, we should be able to decompose joint distribution to take advantage of it Bayesian networks are a way of efficiently factoring the joint distribution into conditional probabilities And also building complex joint distributions from smaller models of probabilistic relationships But… What knowledge does the BN encode about the distribution? How do we use a BN to compute probabilities of variables that we are interested in?
A M ORE C OMPLEX BN BurglaryEarthquake Alarm MaryCallsJohnCalls causes effects Directed acyclic graph Intuitive meaning of arc from x to y: “x has direct influence on y”
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF Size of the CPT for a node with k parents: 2 k A M ORE C OMPLEX BN 10 probabilities, instead of 31
W HAT DOES THE BN ENCODE ? Each of the beliefs JohnCalls and MaryCalls is independent of Burglary and Earthquake given Alarm or Alarm BurglaryEarthquake Alarm MaryCallsJohnCalls For example, John does not observe any burglaries directly P(B J) P(B) P(J) P(B J|A) P(B|A) P(J|A)
W HAT DOES THE BN ENCODE ? The beliefs JohnCalls and MaryCalls are independent given Alarm or Alarm For instance, the reasons why John and Mary may not call if there is an alarm are unrelated BurglaryEarthquake Alarm MaryCallsJohnCalls P(B J|A) P(B|A) P(J|A) P(J M|A) P(J|A) P(M|A) P(B J|A) P(B|A) P(J|A) P(J M|A) P(J|A) P(M|A) A node is independent of its non-descendants given its parents
W HAT DOES THE BN ENCODE ? BurglaryEarthquake Alarm MaryCallsJohnCalls A node is independent of its non-descendants given its parents Burglary and Earthquake are independent Burglary and Earthquake are independent The beliefs JohnCalls and MaryCalls are independent given Alarm or Alarm For instance, the reasons why John and Mary may not call if there is an alarm are unrelated
L OCALLY S TRUCTURED W ORLD A world is locally structured (or sparse) if each of its components interacts directly with relatively few other components In a sparse world, the CPTs are small and the BN contains much fewer probabilities than the full joint distribution If the # of entries in each CPT is bounded by a constant, i.e., O(1), then the # of probabilities in a BN is linear in n – the # of propositions – instead of 2 n for the joint distribution
E QUATIONS I NVOLVING R ANDOM V ARIABLES G IVE R ISE TO C AUSALITY R ELATIONSHIPS C = A B C = max(A,B) Constrains joint probability P(A,B,C) Nicely encoded as causality relationship C AB Conditional probability given by equation rather than a CPT
N AÏVE B AYES M ODELS P(Cause,Effect 1,…,Effect n ) = P(Cause) i P(Effect i | Cause) Cause Effect 1 Effect 2 Effect n
B AYES ’ R ULE AND OTHER P ROBABILITY M ANIPULATIONS P(A,B) = P(A|B) P(B) = P(B|A) P(A) P(A|B) = P(B|A) P(A) / P(B) Gives us a way to manipulate distributions e.g. P(B) = a P(B|A=a) P(A=a) Can derive P(A|B), P(B) using only P(B|A) and P(A)
N AÏVE B AYES C LASSIFIER P(Class,Feature 1,…,Feature n ) = P(Class) i P(Feature i | Class) Class Feature 1 Feature 2 Feature n P(C|F 1,….,F k ) = P(C,F 1,….,F k )/P(F 1,….,F k ) = 1/Z P(C) i P(Fi|C) Given features, what class? Spam / Not Spam English / French/ Latin … Word occurrences
B UT DOES A BN REPRESENT A BELIEF STATE ? I N OTHER WORDS, CAN WE COMPUTE THE FULL JOINT DISTRIBUTION OF THE PROPOSITIONS FROM IT ?
C ALCULATION OF J OINT P ROBABILITY BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF P(J M A B E) = ??
P(J M A B E) = P(J M|A, B, E) P(A B E) = P(J|A, B, E) P(M|A, B, E) P(A B E) (J and M are independent given A) P(J|A, B, E) = P(J|A) (J and B and J and E are independent given A) P(M|A, B, E) = P(M|A) P(A B E) = P(A| B, E) P( B| E) P( E) = P(A| B, E) P( B) P( E) (B and E are independent) P(J M A B E) = P(J|A)P(M|A)P(A| B, E)P( B)P( E) BurglaryEarthquake Alarm MaryCallsJohnCalls
C ALCULATION OF J OINT P ROBABILITY BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF P(J M A B E) = P(J|A)P(M|A)P(A| B, E)P( B)P( E) = 0.9 x 0.7 x x x =
C ALCULATION OF J OINT P ROBABILITY BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF P(J M A B E) = P(J|A)P(M|A)P(A| B, E)P( B)P( E) = 0.9 x 0.7 x x x = P(x 1 x 2 … x n ) = i=1,…,n P(x i |parents(X i )) full joint distribution table
C ALCULATION OF J OINT P ROBABILITY BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF P(x 1 x 2 … x n ) = i=1,…,n P(x i |parents(X i )) full joint distribution table P(J M A B E) = P(J|A)P(M|A)P(A| B, E)P( b)P( e) = 0.9 x 0.7 x x x = Since a BN defines the full joint distribution of a set of propositions, it represents a belief state
P ROBABILISTIC I NFERENCE Assume we are given a Bayes net Usually we aren’t interested in calculating the probability of a setting of all of the variables For some variables we observe their values directly: observed variables For others we don’t care: nuisance variables How can we enforce observed values and ignore nuisance variables, while strictly adhering to the rules of probability? Probabilistic inference problems
P ROBABILITY M ANIPULATION R EVIEW … Three fundamental operations Conditioning Marginalization Applying (conditional) independence assumptions
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Suppose we want to compute P(Alarm)
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Suppose we want to compute P(Alarm) 1.P(Alarm) = Σ b,e P(A,b,e) 2.P(Alarm) = Σ b,e P(A|b,e)P(b)P(e) Suppose we want to compute P(Alarm) 1.P(Alarm) = Σ b,e P(A,b,e) 2.P(Alarm) = Σ b,e P(A|b,e)P(b)P(e)
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Suppose we want to compute P(Alarm) 1.P(Alarm) = Σ b,e P(A,b,e) 2.P(Alarm) = Σ b,e P(A|b,e)P(b)P(e) 3.P(Alarm) = P(A|B,E)P(B)P(E) + P(A|B, E)P(B)P( E) + P(A| B,E)P( B)P(E) + P(A| B, E)P( B)P( E) Suppose we want to compute P(Alarm) 1.P(Alarm) = Σ b,e P(A,b,e) 2.P(Alarm) = Σ b,e P(A|b,e)P(b)P(e) 3.P(Alarm) = P(A|B,E)P(B)P(E) + P(A|B, E)P(B)P( E) + P(A| B,E)P( B)P(E) + P(A| B, E)P( B)P( E)
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Suppose we want to compute P(Alarm) 1.P(A) = Σ b,e P(A,b,e) 2.P(A) = Σ b,e P(A|b,e)P(b)P(e) 3.P(A) = P(A|B,E)P(B)P(E) + P(A|B, E)P(B)P( E) + P(A| B,E)P( B)P(E) + P(A| B, E)P( B)P( E) 4.P(A) = 0.95*0.001* *0.001* *0.999* *0.999*0.998 = Suppose we want to compute P(Alarm) 1.P(A) = Σ b,e P(A,b,e) 2.P(A) = Σ b,e P(A|b,e)P(b)P(e) 3.P(A) = P(A|B,E)P(B)P(E) + P(A|B, E)P(B)P( E) + P(A| B,E)P( B)P(E) + P(A| B, E)P( B)P( E) 4.P(A) = 0.95*0.001* *0.001* *0.999* *0.999*0.998 =
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Now, suppose we want to compute P(MaryCalls)
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Now, suppose we want to compute P(MaryCalls) 1.P(M) = P(M|A)P(A) + P(M| A) P( A) Now, suppose we want to compute P(MaryCalls) 1.P(M) = P(M|A)P(A) + P(M| A) P( A)
BEP(A| … ) TTFFTTFF TFTFTFTF BurglaryEarthquake Alarm MaryCallsJohnCalls P(B) P(E) AP(J|…) TFTF AP(M|…) TFTF T OP -D OWN INFERENCE Now, suppose we want to compute P(MaryCalls) 1.P(M) = P(M|A)P(A) + P(M| A) P( A) 2.P(M) = 0.70* *( ) = Now, suppose we want to compute P(MaryCalls) 1.P(M) = P(M|A)P(A) + P(M| A) P( A) 2.P(M) = 0.70* *( ) =
Q UERYING THE BN The BN gives P(T|C) What about P(C|T)? Cavity Toothache P(C) 0.1 CP(T|C) TFTF
B AYES ’ R ULE P(A B) = P(A|B) P(B) = P(B|A) P(A) So… P(A|B) = P(B|A) P(A) / P(B) A convenient way to manipulate probability equations
A PPLYING B AYES ’ R ULE Let A be a cause, B be an effect, and let’s say we know P(B|A) and P(A) (conditional probability tables) What’s P(B)?
A PPLYING B AYES ’ R ULE Let A be a cause, B be an effect, and let’s say we know P(B|A) and P(A) (conditional probability tables) What’s P(B)? P(B) = a P(B,A=a) [marginalization] P(B,A=a) = P(B|A=a)P(A=a)[conditional probability] So, P(B) = a P(B | A=a) P(A=a)
A PPLYING B AYES ’ R ULE Let A be a cause, B be an effect, and let’s say we know P(B|A) and P(A) (conditional probability tables) What’s P(A|B)?
A PPLYING B AYES ’ R ULE Let A be a cause, B be an effect, and let’s say we know P(B|A) and P(A) (conditional probability tables) What’s P(A|B)? P(A|B) = P(B|A)P(A)/P(B)[Bayes rule] P(B) = a P(B | A=a) P(A=a)[Last slide] So, P(A|B) = P(B|A)P(A) / [ a P(B | A=a) P(A=a)]
H OW DO WE READ THIS ? P(A|B) = P(B|A)P(A) / [ a P(B | A=a) P(A=a)] [An equation that holds for all values A can take on, and all values B can take on] P(A=a|B=b) =
H OW DO WE READ THIS ? P(A|B) = P(B|A)P(A) / [ a P(B | A=a) P(A=a)] [An equation that holds for all values A can take on, and all values B can take on] P(A=a|B=b) = P(B=b|A=a)P(A=a) / [ a P(B=b | A=a) P(A=a)] Are these the same a?
H OW DO WE READ THIS ? P(A|B) = P(B|A)P(A) / [ a P(B | A=a) P(A=a)] [An equation that holds for all values A can take on, and all values B can take on] P(A=a|B=b) = P(B=b|A=a)P(A=a) / [ a P(B=b | A=a) P(A=a)] Are these the same a? NO!
H OW DO WE READ THIS ? P(A|B) = P(B|A)P(A) / [ a P(B | A=a) P(A=a)] [An equation that holds for all values A can take on, and all values B can take on] P(A=a|B=b) = P(B=b|A=a)P(A=a) / [ a’ P(B=b | A=a’) P(A=a’)] Be careful about indices!
Q UERYING THE BN The BN gives P(T|C) What about P(C|T)? P(Cavity|T=t) = P(Cavity T=t)/P(T=t) = P(T=t|Cavity) P(Cavity) / P(T=t) [Bayes’ rule] Querying a BN is just applying Bayes’ rule on a larger scale… algorithms next time Cavity Toothache P(C) 0.1 CP(T|C) TFTF
M ORE C OMPLICATED S INGLY -C ONNECTED B ELIEF N ET Radio Battery SparkPlugs Starts Gas Moves
S OME A PPLICATIONS OF BN Medical diagnosis Troubleshooting of hardware/software systems Fraud/uncollectible debt detection Data mining Analysis of genetic sequences Data interpretation, computer vision, image understanding
Region = {Sky, Tree, Grass, Rock} R2 R4 R3 R1 Above
BN to evaluate insurance risks
P URPOSES OF B AYESIAN N ETWORKS Efficient and intuitive modeling of complex causal interactions Compact representation of joint distributions O(n) rather than O(2 n ) Algorithms for efficient inference with given evidence (more on this next time)
H OMEWORK Read R&N