CS 188: Artificial Intelligence Bayes’ Nets: Independence Instructors:
32 Slides2.42 MB
CS 188: Artificial Intelligence Bayes’ Nets: Independence Instructors: Pieter Abbeel & Dan Klein --- University of California, Berkeley [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available at http://ai.berkeley.edu.]
Probability Recap Conditional probability Product rule Chain rule X, Y independent if and only if: X and Y are conditionally independent given Z if and only if:
Bayes’ Nets A Bayes’ net is an efficient encoding of a probabilistic model of a domain Questions we can ask: Inference: given a fixed BN, what is P(X e)? Representation: given a BN graph, what kinds of distributions can it encode? Modeling: what BN is most appropriate for a given domain?
Bayes’ Net Semantics A directed, acyclic graph, one node per random variable A conditional probability table (CPT) for each node A collection of distributions over X, one for each combination of parents’ values Bayes’ nets implicitly encode joint distributions As a product of local conditional distributions To see what probability a BN gives to a full assignment, multiply all the relevant conditionals together:
Example: Alarm Network B P(B) b 0.001 -b 0.999 A J P(J A) a j a B E A E P(E) e 0.002 -e 0.998 A M P(M A) 0.9 a m 0.7 -j 0.1 a -m 0.3 -a j 0.05 -a m 0.01 -a -j 0.95 -a -m 0.99 J M B E A P(A B,E) b e a 0.95 b e -a 0.05 b -e a 0.94 b -e -a 0.06 -b e a 0.29 -b e -a 0.71 -b -e a 0.001 -b -e -a 0.999
Example: Alarm Network B P(B) b 0.001 -b 0.999 A J P(J A) a j a B E A E P(E) e 0.002 -e 0.998 A M P(M A) 0.9 a m 0.7 -j 0.1 a -m 0.3 -a j 0.05 -a m 0.01 -a -j 0.95 -a -m 0.99 J M B E A P(A B,E) b e a 0.95 b e -a 0.05 b -e a 0.94 b -e -a 0.06 -b e a 0.29 -b e -a 0.71 -b -e a 0.001 -b -e -a 0.999
Size of a Bayes’ Net How big is a joint distribution over N Boolean variables? 2N How big is an N-node net if nodes have up to k parents? O(N * 2k 1) Both give you the power to calculate BNs: Huge space savings! Also easier to elicit local CPTs Also faster to answer queries (coming)
Bayes’ Nets Representation Conditional Independences Probabilistic Inference Learning Bayes’ Nets from Data
Conditional Independence X and Y are independent if X and Y are conditionally independent given Z (Conditional) independence is a property of a distribution Example:
Bayes Nets: Assumptions Assumptions we are required to make to define the Bayes net when given the graph: Beyond above “chain rule Bayes net” conditional independence assumptions Often additional conditional independences They can be read off the graph Important for modeling: understand assumptions made when choosing a Bayes net graph
Example X Y Z W Conditional independence assumptions directly from simplifications in chain rule: Additional implied conditional independence assumptions?
Independence in a BN Important question about a BN: Are two nodes independent given certain evidence? If yes, can prove using algebra (tedious in general) If no, can prove with a counter example Example: X Y Z Question: are X and Z necessarily independent? Answer: no. Example: low pressure causes rain, which causes traffic. X can influence Z, Z can influence X (via Y) Addendum: they could be independent: how?
D-separation: Outline
D-separation: Outline Study independence properties for triples Analyze complex cases in terms of member triples D-separation: a condition / algorithm for answering such queries
Causal Chains This configuration is a “causal chain” Guaranteed X independent of Z ? No! One example set of CPTs for which X is not independent of Z is sufficient to show this independence is not guaranteed. Example: Low pressure causes rain causes traffic, high pressure causes no rain causes no traffic X: Low pressure Y: Rain Z: Traffic In numbers: P( y x ) 1, P( -y - x ) 1, P( z y ) 1, P( -z -y ) 1
Causal Chains This configuration is a “causal chain” X: Low pressure Y: Rain Guaranteed X independent of Z given Y? Z: Traffic Yes! Evidence along the chain “blocks” the influence
Common Cause This configuration is a “common cause” Guaranteed X independent of Z ? No! One example set of CPTs for which X is not independent of Z is sufficient to show this independence is not guaranteed. Y: Project due Example: Project due causes both forums busy and lab full In numbers: X: Forums busy Z: Lab full P( x y ) 1, P( -x -y ) 1, P( z y ) 1, P( -z -y ) 1
Common Cause This configuration is a “common cause” Guaranteed X and Z independent given Y? Y: Project due X: Forums busy Z: Lab full Yes! Observing the cause blocks influence between effects.
Common Effect Last configuration: two causes of one effect (v-structures) X: Raining Y: Ballgame Are X and Y independent? Yes: the ballgame and the rain cause traffic, but they are not correlated Still need to prove they must be (try it!) Are X and Y independent given Z? No: seeing traffic puts the rain and the ballgame in competition as explanation. This is backwards from the other cases Observing an effect activates influence between Z: Traffic possible causes.
The General Case
The General Case General question: in a given BN, are two variables independent (given evidence)? Solution: analyze the graph Any complex example can be broken into repetitions of the three canonical cases
Reachability Recipe: shade evidence nodes, look for paths in the resulting graph L Attempt 1: if two nodes are connected by an undirected path not blocked by a shaded node, they are conditionally independent R Almost works, but not quite Where does it break? Answer: the v-structure at T doesn’t count as a link in a path unless “active” D B T
Active / Inactive Paths Question: Are X and Y conditionally independent given evidence variables {Z}? Yes, if X and Y “d-separated” by Z Consider all (undirected) paths from X to Y No active paths independence! A path is active if each triple is active: Causal chain A B C where B is unobserved (either direction) Common cause A B C where B is unobserved Common effect (aka v-structure) A B C where B or one of its descendents is observed All it takes to block a path is a single inactive segment Active Triples Inactive Triples
D-Separation Query: Check all (undirected!) paths between ? and If one or more active, then independence not guaranteed Otherwise (i.e. if all paths are inactive), then independence is guaranteed
Example Yes R B T T’
Example L Yes R Yes D B T Yes T’
Example Variables: R: Raining T: Traffic D: Roof drips S: I’m sad R T D Questions: S Yes
Structure Implications Given a Bayes net structure, can run dseparation algorithm to build a complete list of conditional independences that are necessarily true of the form This list determines the set of probability distributions that can be represented
Computing All Independences Y X Z Y X Z X Z Y Y X Z
Topology Limits Distributions Given some graph topology G, only certain joint distributions can be encoded Y Y X X Z Z Y The graph structure guarantees certain (conditional) independences X Z Y X (There might be more independence) Adding arcs increases the set of distributions, but has several costs X Full conditioning can encode X Y Y Z X Y Z X Y Y Z X Z Z Y Z X Z
Bayes Nets Representation Summary Bayes nets compactly encode joint distributions Guaranteed independencies of distributions can be deduced from BN graph structure D-separation gives precise conditional independence guarantees from graph alone A Bayes’ net’s joint distribution may have further (conditional) independence that is not detectable until you inspect its specific distribution
Bayes’ Nets Representation Conditional Independences Probabilistic Inference Enumeration (exact, exponential complexity) Variable elimination (exact, worst-case exponential complexity, often better) Probabilistic inference is NP-complete Sampling (approximate) Learning Bayes’ Nets from Data