SLIDE 1 Lecture
19
:
The
Junction
Tree
Algorithm
Scribes
:
Baham
,
Sabbir
SLIDE 2 Belief
Propagation :
The
Problem With
Loops
a
b
Directed
Graph
;
pca
, b.
c
d )
=
Pla)
p ( b
l a)
p(
dla
)
p
(
clb
,
d )
A C
pfz
Factor
Graph
;
a
s
a.
s
b
pc
a ,b
,
c
d )
n
Rfar
↳a•
fu
=
fz(
a ,b ) f }(
a.
d)
fu( b.
3h
L
I
Almost
all
Bayesian
networks
have
loops
=
SLIDE 3 Loopy
Belief Propagation
Step
1 :
Initialize
Messages
µ[ f.
×
][
h ]
=
1
He
EE
he{qB
µ[
×
,f][
h ]
=
1
fz
a
a.
b
Step
2
:
Update
messages
f.
a. a.
fu
for
f
€
SCHEDULE
:
a c
for
× e
helf
)
:
Update
µ×→t
and
µf→×
Problem
:
Convergence
not guaranteed
SLIDE 4 Today
:
Junction Trees
Idea
:
Transform
graphical
models With
loops
into
clique
trees
without
loops
Markov
Network Junction
Tree
Advantage
:
Can
compute
exact
=
marginal
,
SLIDE 5 Reparameterisatim
pcaib
)
=
plays )
PC b)
Example
:
Markov
Chain
)
PC
a
,
b
,
c ,
d
)
=
pcalb
)
pcblc
)
pccld
)
pcd )
Repurametnisation
:
Express
joint
as
b
and
c
twice
product
marginalsgyy
\
.
p(
a ,
b
,
c
,
d )
=
pca,b_7
Plb , c)
plc ,d ) peb )
pet
Tya
, #
it
divide
by
plb )
pcc
)
SLIDE 6 Clique
Graphs
Definition
:
A
clique
is
a
fully
Subset
variables
in
a
graphical
model
Clique
potentials
a .
1
¢
( a. b. c)
¢( b.
c.
d)
4171
' )¢(X2
7
p(
c.
d)
=
¢(
b.
c)
7
¢(
X 'RX2 )
In
separator
Potential
X
'={
a ,b ,c}
2/2 :{ b.
7
'
X 'nX2
72
SLIDE 7 Absorption
:
Normalizing
Clique
Graphs
Goal
:
Transform
clique
graph
to
ensure
that
potentials
take
the
form
marginal
densities
pcuuw
)
=
¢(
V )
¢(
W
)
:
¢(
s )
=
=
dcvsdcw
)
marginal
for cliques
§
( S
)
( analogous to
BP )
=
pcu
)
¢( W )
=
pcw )
¢
'
(5)
=p(s7
SLIDE 8 Absorption
:
Normalizing
Clique
Graphs
p(
Uuw
)
=
¢(
V )
¢(
w
)
¢
(
s )
Marginal
for
V
PIV
)
=
[
pcvuw
)
=
¢(
D)
£u¢(W)WiV
¢(
s )
Absorption from
W
to
V
through
5
¢*lv )
:=
011 D)
toys
4*15 )
=
2
¢ ( w
)
¢
( s )
WW
¢N)0(W)_t
=
¢w
)
10¥51
%)
=
4µW
)
toys )
¢(
s )
¢*ys
)
¢( s )
SLIDE 9 Absorption
:
Normalizing
Clique
Graphs
*
p(
V.
w )
=
¢(
V )
¢(
W
)
#
csl
Absorption
from
V
to
W
through
S
g*lw
)
÷
¢ (
w )
0*4
¢**Cs
)
⇐
[ ¢*w
)
.
¢*
( s )
01W
Preserves
density
*
"
¢*
*
'
w
'
=
,
=
0401101W
'
¢
# *
(
s )
¢*(
s )
j
SLIDE 10 Absorption
:
Normalizing
Clique
Graphs
p(
V.
w )
=
¢(
V )
¢ (
w
)
¢
(
s )
=
§(v)§(
w )
¢(s7
= ¢*lV )
=
¢ (
U ) 44¥
,
=
plu )
¢*ls )
=
w{sQ(
W )
§lw )
=g*lw)=¢(
w )
¢**cI=p(
w )
#
( s )
⇐
fgs
#
V )
¢
*
(
s )
§
( s )
=
¢*% )
=
pcs
)
SLIDE 11 Absorption
:
Normalizing
Clique
Graphs
General
Case
:
Absorb
in
both
directions
along
each
edge
Schedule
:
Compute
Incoming
messages
followed by
messages
SLIDE 12 Junction
Trees
( Singly
Connected
)
pcxi
,
xz
,
X
}
,
Xu
)
=
¢
(
×
,
,Xu
1
¢(
xz
,Xu )
¢ ( xs
,×a\
pcxi
,
Xu
)
=
¢
C
×
,
,xa
) ( §
¢(
Xz
, Xu
) ) ( §¢(
×
}
,
Xu ) )
pcxz
,
xu
)
=
¢(
xz
,
xu )
( {
¢ ( ×
,
,xa1 ) ( § locks ,×u ) )
pcxs
,
xul
=
¢1×3,41
( §
qk
,
,×n
) ( {
¢(
×
, ,×a ) )
Markov Networh
Clique Graph
SLIDE 13 Junction
Trees
( Singly
Connected
)
pcxi
,
xz
,
X
}
,
Xu
)
=
¢
(
×
,
,Xu
1
¢(
xz
,Xu )
¢ ( xs
,×a\
pcxi
,
xu
)
=
¢cx
,,xu
) ( {
Qcx
.
,xn ) ) ( {
¢ ( x
,
in
) )
|p(
xz
,
xu
)
=
¢(
×
.
,xa
)
(
folk
.
,×u ) ) ( §¢c×
,
,×a ) )
p(
I.
'
4,41
=
011×3.41
( §
dcx
,
,×n ) ) ( {
¢c
xaxa ) ) PCX
, ,X< , )
PCXZ
,
Xu )
p
(
X }
th
, )
=
¢
(
x
,
,Xu
1
¢(
xz
,Xu )
01 ( xs
,xu\
2
(( {
dcx
.
,xa ) ) ( {
¢k},×n
) ) ( {
dcx
,
,xn ) ))
=
PCX
, ,
Xz
,
X
> ,
Xa
,
)
PCXL, )2
SLIDE 14 Junction
Trees
( Singly
Connected
)
pcxi
,
xz
,
X
}
,
Xu
)
=
¢
(
×
,
,
Xu
1
¢ (
xz
, Xu )
¢ ( xs
,×⇐
Clique
Potentials
=
pc
×
, ,
×µ
)
pcxe
,
xul
p(×3
,
xa
)
Separator
Potentials 4^15
'
' )
pcxn )
www.w.ru#iEikEnYKYYkn.+iatru)
SLIDE 15 Junction
Trees
( Singly
Connected
)
Markov Network
Clique Graph
Junction
Tree
x
General
Property
:
When
a
variable
x
in
all separators
a
loop
,
then
we
may
remove
x
from
an
arbitrarily
chosen
separator
SLIDE 16 Junction
Trees
:
Running
Intersection
Property
Definition
:
A
clique
tree
Is
a
junction
tree
if
,
for
each
pair
nodes
V
and
W
,
all
nodes
the
path
from
U to
W
contain
the intersection
Vn
W
Consistency
:
For
any
pain
nodes
V
and
W
in
a
junction
tree
.
the
marginal
for
the intersection
I
=
Un
W
satisfies
the
consistency
condition
#
(
I
)
=
I
¢
( 0
)
=
[
011 W ) Dlw
W\U
i
,
SLIDE 17 Constructing
Junction
Trees
( Singly
Step
1
:
Moralize
a
graph
by
adding
edges
between
parents
SLIDE 18 Constructing
Junction
Trees
( Singly
Step
2
:
Define
a
clique
graph
=
SLIDE 19 Constructing
Junction
Trees
( Singly
Step
3
:
Break
loops
to
a
Junction
Tree
X
X
Definition
:
Any
maximal
weight
spanning tree
is
a
junction
tree
.
The
weight
a
tree
is
defined
as
the
sum
curdinalittes
separators
,
SLIDE 20 Constructing
Junction
Trees
( Singly
Step
4
:
Define
potentials
p(
a.
b.
c.
d.
e.
f
,
g)
=
p
(
a)
Pcb
) p (
clb
,
a )
.
(
a.
b.
c)
pcdsplelcidd
(
C
,
d. e)
pcflc
)
plgle
)
plhle
)
,
f) ¢(
¢( e. h )
¢
(
c ) =
1
¢
(e)
=|
SLIDE 21 Constructing
Junction
Trees
( Singly
Step
5
:
Propagate
messages
according
to
an
absorption
schedule
y
\u
dlxi
)
→
ECX'l=p( F)
µ
§
£
¢
's
' '
→
¢csis=
,.es ;)
*
SLIDE 22 Constructing
Junction
Trees
( General
Case )
Problem
:
Marginalization
can
introduce
edges
pc
a ,b ,
c.
d)
=
¢(
a
, b)
4lb
,c
)
¢(
c.
d
)
¢
( d
, a )
PC
a ,b , c
)
=
{
pca
,
b.
a
,
d
)
=
01
a.
b)
¢( b.
c )
{
¢Cc,d)¢
( d.
a )
*
a.
c)
SLIDE 23 Constructing
Junction
Trees
( General
Case )
Solution
:
Triangulate
graph
by
adding
diagonals
to
all
size
4
loops
SLIDE 24 Greedy
Variable
Elimination
Strategy
:
Eliminate variable
that
adds
fewest
edges
at
each
step
SLIDE 25 .
Junction
Trees
:
Computational
Complexity
Markov
Network Junction
Tree
.
Exponential
in
maximal
clique
size
Complexity
:
Exponential
in
clique
she
depend
elimination
necessarily
complexity