Tutorial 8 Optimal Clique Trees A rundown of the paper - Optimal Junction Trees by Finn V. Jensen and Frank Jensen Tal Shor Basic definitions • Junction tree or Clique graph/tree – is a graph where each node is a maximal clique in a main graph. • It maintains the so-called junction tree property – for each pair of maximal cliques 𝑈, 𝑉 with intersection 𝑆, all cliques on paths between them, contain 𝑆. • We give each link in the junction tree a label called separator, and it’s value is exactly 𝑆 Minimal spanning tree - recap For a graph G with a weight function on the links, find a subset of links, creating the minimal weighted tree. Prim’s algorithm - 𝑆 = 𝑁 . Pick the minimal weighted link (𝑈,𝑉) such that 𝑈 ∈ 𝑆 and 𝑉 ∉ 𝑆, add 𝑉 to 𝑆. Kruskal’s algorithm – Choose successively a link of minimal weight not producing a cycle. Maximal spanning tree Student: If minimal spanning tree is P, it must be NP-Hard, no? Tutor: It’s basically the same as MST – just pick the edge with the maximal weight instead of the minimal. The proof’s logic (Visually) Max spanning tree of 1 2 3 = Min spanning tree of -1 -2 -3 = Min spanning tree of 10000-1 10000-3 10000-2 Theorems Theorem 1 A Spanning tree for the junction graph of G is a junction tree if and only if it is a spanning tree of maximal weight. Theorem 2 Any minimal cost junction tree can be constructed by successively choosing a link of maximal weight not introducing cycles, and if several links may be chosen then a link of minimal cost is selected. Junction tree algorithm example V S S,L,B L B T S,L,B A,B L Σ𝐷 ⇒ A A,T,L A B A,B,D A A A,L,B ⇐ Σ𝐵 Σ𝑇 ⇒ A,T,L ⇐ Σ 𝑇,𝐿 T Σ𝑋 ⇒ D X,A Σ𝑆 ⇒ ⇐ Σ𝐴 ⇐ Σ𝐿 A,L A,B,D X A,L,B L,B V,T X,A Σ𝐴,𝐿 ⇒ ⇐ Σ𝑉 V,T Theorem 1 proof Maximal spanning tree ⇒ Junction tree • 𝑇 - spanning tree of maximal weight where 𝑇1 ⊆ 𝑇2 … ⊆ 𝑇𝑛 are Prim’s subtrees. We assume that 𝑇 is not a junction tree • 𝑚 - a stage such that 𝑇𝑚 can be extended to a junction tree (𝑇′), yet T𝑚+1 can’t • 𝑈, 𝑉 - the edge added in step m such that 𝑉 ∈ 𝑇𝑚+1 with the label 𝑆 ⇒ 𝑈, 𝑉 ∉ 𝑇′ Theorem 1 proof (2) • 𝑇′ must contain a path between U and V such that in it, there is link 𝑈 ′ , 𝑉 ′ where 𝑈 ′ ∈ 𝑇𝑚 , 𝑉 ′ ∉ 𝑇𝑚 with 𝑆 ′ as it’s label. • 𝑆 ⊆ 𝑆′ and 𝑆 ≥ |𝑆 ′ | ⇒ 𝑆 = 𝑆′ • Remove (𝑈 ′ , 𝑉 ′ ) from 𝑇′ and you get a junction tree that extends 𝑇𝑚+1 contradicting the assumption Theorem 1 proof (3) ¬Maximal spanning tree ⇒ ¬Junction tree • 𝑇 is a non maximal spanning tree while 𝑇1 , … , 𝑇𝑛 = 𝑇 ′ are as before. • (𝑈, 𝑉) the first node where 𝑇′ and 𝑇 (have to) diverge. It is labeled 𝑆. Find the (𝑈 ′ , 𝑉 ′ ) link again (𝑆′) • By definition of MST - 𝑆 ′ < |𝑆| ⇒ 𝑆 > 𝑆 ′ ≥ |𝑈 ∩ 𝑉| therefore 𝑇 is not a junction tree Optimal Junction trees • Using the junction tree propagation (passing the marginalized factor of the clique) - we pass messages throughout our junction tree. • We do so in order to get the marginal probability of the joint probability distribution for every variable • This message passing can be organized so that it is sufficient to pass a single message in each direction of every edge. • We can associate a local measure 𝐶(𝑈, 𝑉) to the links (𝑈, 𝑉) where this cost indicates the time/space consumption of the two passes. Find an optimal junction tree • A junction graph might have several junction tree. • We now find a junction tree that minimizes some 𝐶(𝑇) = ∑𝐶(𝑈, 𝑉) • Unlike before – we focus on Kruskal’s algorithm. Let 𝑤1 , … , 𝑤𝑛 be the unique, sorted (decreasing) weights of G such that on stage 𝑖 all possible links of weights 𝑤1 , … , 𝑤𝑖 have been chosen. Find an optimal junction tree (2) • Stage 𝑖 + 1 can be viewed as such: we add all the links of weight 𝑤𝑖+1 and break all the cycles by removing links of that weight. Find an optimal junction tree (3) • Any thinning will result in a forest of partial maximal spanning trees. And every thinning, at every stage, results in the same connected components therefore the thinning has no impact on the next stage. • Therefore we can max a secondary priority (cost) so that we end up with a maximal weight spanning tree of minimal cost. Theorems Theorem 1 A Spanning tree for the junction graph of G is a junction tree if and only if it is a spanning tree of maximal weight. Theorem 2 Any minimal cost junction tree can be constructed by successively choosing a link of maximal weight not introducing cycles, and if several links may be chosen then a link of minimal cost is selected. Corollary All junction trees over the same triangulated graph have the same separators (also counting multiplicity) Proof When we remove a link (𝑈, 𝑉) with label 𝑆 of weight 𝑤𝑖+1 in the thinning process, then all separators in the remaining paths between U and V must contain S. U 𝑤𝑖+1 𝑤𝑖+1 Since they weigh the same – all the separators are exactly 𝑆. V Reminder - Theorem 7 • Definition: The following are equivalent: 1. G is chordal 2. The edges of G can be directed acyclically so that every pair of converging arrows comes from two adjacent vertices. 3. G has a perfect vertex elimination scheme. 4. There is a tree T with maximal cliques of G as vertices. Any two cliques containing v are either adjacent in T or connected by a path of cliques that contain v. 16
© Copyright 2026 Paperzz