Directed graphical models

Alexandre Bouchard-Côté

Graphical models

Motivation: “generating data”

Example

Recall the Delta rocket example:

launch1 | failureProbability ~ Bernoulli(failureProbability)
launch2 | failureProbability ~ Bernoulli(failureProbability)
launch3 | failureProbability ~ Bernoulli(failureProbability)

nextLaunch | failureProbability ~ Bernoulli(failureProbability)

failureProbability ~ ContinuousUniform(0, 1)

Suppose you want to generate a synthetic dataset.

Poll: what order is most convenient to generate the 5 variables?

  1. launch1, launch2, launch3, nextLaunch, failureProbability
  2. failureProbability, launch1, launch2, launch3, nextLaunch
  3. nextLaunch, failureProbability, launch1, launch2, launch3
  4. nextLaunch, launch1, launch2, launch3, failureProbability
  5. failureProbability, nextLaunch, launch1, launch2, launch3

Example, continued

launch1 | failureProbability ~ Bernoulli(failureProbability)
launch2 | failureProbability ~ Bernoulli(failureProbability)
launch3 | failureProbability ~ Bernoulli(failureProbability)

nextLaunch | failureProbability ~ Bernoulli(failureProbability)

failureProbability ~ ContinuousUniform(0, 1)

drawing

y | ..., x, ...

Conditioning

Bonus: the notation can be used to represent a conditional distribution.

Convention: shade in gray the nodes we condition on (observations)

drawing

Plate notation

Plate: When there are too many vertices to draw in a graphical model, use a square (“plate”) to indicate a group of nodes that are repeated several times. A graphical “for loop”.

drawing

Further pointers on graphical models

Directed graphical models are also useful to identify conditional independence relationships (recall, \(A\) is conditionally independent of \(B\) give \(C\) if \({\mathbb{P}}(A|C) {\mathbb{P}}(B|C) = {\mathbb{P}}(A \cap B | C)\)).

Watch this video to see how this is done, or read the original paper.