
CHAPTER 14. STRUCTURED PROBABILISTIC MODELS FOR DEEP LEARNING
in either direction. (The name “immorality” may seem strange; it was coined in
the graphical models literature as a joke about unmarried parents) To convert a
directed model with graph D into an undirected model, we need to create a new
graph U. For every pair of variables x and y, we add an undirected edge connect-
ing x and y to U if there is a directed edge (in either direction) connecting x and
y in D or if x and y are both parents in D of a third variable z. The resulting U
is known as a moralized graph. See Fig. 14.10 for examples of converting directed
models to undirected models via moralization.
Likewise, undirected models can include substructures that no directed model
can represent perfectly. Specifically, a directed graph D cannot capture all of
the conditional independences implied by an undirected graph U if U contains a
loop of length greater than three, unless that loop also contains a chord. A loop
is a sequence of variables connected by undirected edges, with the last variable
in the sequence connected back to the first variable in the sequence. A chord is
a connection between any two non-consecutive variables in this sequence. If U
has loops of length four or greater and does not have chords for these loops, we
must add the chords before we can convert it to a directed model. Adding these
chords discards some of the independence information that was encoded in U.
The graph formed by adding chords to U is known as a chordal or triangulated
graph, because all the loops can now be described in terms of smaller, triangular
loops. To build a directed graph D from the chordal graph, we need to also assign
directions to the edges. When doing so, we must not create a directed cycle in
D, or the result does not define a valid directed probabilistic model. One way
to assign directions to the edges in D is to impose an ordering on the random
variables, then point each edge from the node that comes earlier in the ordering
to the node that comes later in the ordering. TODO point to fig
IG HERE
TODO: started this above, need to scrap some some BNs encode indepen-
dences that MNs can’t encode, and vice versa example of BN that an MN can’t
encode: A and B are parents of C A is d-separated from B given the empty set
The Markov net requires a clique over A, B, and C in order to capture the active
path from A to B when C is observed This clique means that the graph cannot
imply A is separated from B given the empty set example of a MN that a BN
can’t encode: A, B, C, D connected in a loop BN cannot have both A d-sep D
given B, C and B d-sep C given A, D
In many cases, we may want to convert an undirected model to a directed
model, or vice versa. To do so, we choose the graph in the new format that implies
as many independences as possible, while not implying any independences that
were not implied by the original graph.
To convert a directed model D to an undirected model U, we re
355