D-Separation in Bayes Nets

Conditional independence relationships in Bayesian Networks can be directly read from the graph through D-separation, a graphical criterion that determines whether two nodes are independent given a set of observed nodes. Consider the three canonical three-node patterns:

  • Causal Chain (): it follows that , but .
  • Common Cause (): it follows that , but .
  • Common Effect (Collider) (): it follows that , but , or any other descendant of .

A path between two variables is said to be active if all its triples (segments of three nodes):

  • …form a chain or common cause, and the middle node is unobserved.
  • …form a common effect, and the middle node or one of its descendants is observed.

If all paths between and are inactive given a set of observed nodes , then . Otherwise, and are D-connected and potentially dependent.

In practice, the D-separation algorithm proceeds as follows:

  1. Shade all observed nodes .
  2. Enumerate all undirected paths between and .
  3. For each path, decompose it into triples and determine which are active.
  4. If every path is inactive, .