100 likes | 228 Vues
This lecture focuses on the challenges presented by multiply-connected graphs in Bayesian Networks (BNs). When there are multiple paths between nodes, answering queries becomes complex. We discuss three primary strategies to handle these challenges: clustering offending nodes into meganodes, conditioning on variables, and stochastic simulation. The popular approach of clustering is explored, highlighting the Junction Tree Algorithm, including moralization of graphs, triangulation, clique formation, and message-passing techniques to simplify computations and enable efficient querying.
E N D
CSCI 121 Special Topics: Bayesian NetworksLecture #3: Multiply-Connected Graphs and the Junction Tree Algorithm
A A B C B C D D Answering Queries: Problems Difficult if graph is not singly connected (a.k.a polytree): Multiply connnected: more than one path from A to D. P(D|A) = ? Singly connnected (polytree): just one path from A to D.
Dealing with Multiply Connected Graphs • Three basic options: • Clustering – group “offending” nodes into “meganodes” • Conditioning – set variables to definite values; then build a polytree for each combo • Stochasticsimulation – Generate a large number of concrete models consistent with the domain. • Clustering seems to be the most popular .
A A C C G G B B D D E H E H F F Clustering with the Junction-Tree Algorithm (Huang & Darwiche 1994) 0) Note that a BN is a directed acyclic graph (DAG) 1) “Moralize” the DAG: For parents A, B of node C, draw an edge between A and B. Then remove arrows (undirected graph).
A A C G C G B B D E H D E H F F Clustering with the Junction-Tree Algorithm 2) Triangulate the moral graph so that every cycle of length ≥ 4 contains an edge between nonadjacent nodes. Use a heuristic based on minimal # of edges added, minimal # possible values.
A ABD ACE C G B ADE CEG D E H DEF EGH F Clustering with the Junction-Tree Algorithm 3) Build cliques from triangulated graph: Put your hands in the air and represent your clique! – 112 , “Peaches and Cream”
ABD ADE ACE CEG AD AE CE EG DE DEF EGH Clustering with the Junction-Tree Algorithm 4) Connect cliques by separation sets to form the junction tree:
Marginalization • At this point, each cluster (clique; meganode) has a joint probability table. • To query a variable, we (heuristically) pick a cluster containing it, and marginalizeover the joint probability Ф from the table: ABDФABD T T T .225 T T F .025 T F T .125 T F F .125 F T T .180 F T F .020 F F T .150 F F F .150 D P(D) Σ T .225 + .125 + .180 + .150 = .680 F .025 + .125 + .020 + .150 = .320
ABD ADE ACE CEG AD AE CE EG DE DEF EGH Message-Passing • Sepset potentials are initialized via marginalization. • When evidence is presented (“John calls”), heuristically pick a “root clique” and pass messages around the tree:
Message-Passing • Messages are passed from clique X to Y through sepset R by multiplication and division of table entries. • Evidence is set by “masking” table entries with a bit vector (or probability distribution). E.g., observe B = F: ABDФABD T T T 0 T T F 0 T F T .125 T F F .125 F T T 0 F T F 0 F F T .150 F F F .150