Distributed Evidence Propagation in Junction Trees on Clusters

Evidence propagation is a major step in exact inference, a key problem in exploring probabilistic graphical models. In this paper, we propose a novel approach for parallelizing evidence propagation in junction trees on clusters. Our proposed method explores structural parallelism in a given junction tree. We decompose a junction tree into a set of subtrees, each consisting of one or multiple leaf-root paths in the junction tree. In evidence propagation, we first perform evidence collection in these subtrees concurrently. Then, the partially updated subtrees exchange data for junction tree merging, so that all the cliques in the junction tree can be fully updated for evidence collection. Finally, evidence distribution is performed in all the subtrees to complete evidence propagation. Since merging subtrees requires communication across processors, we propose a technique called bitmap partitioning to explore the tradeoff between bandwidth utilization efficiency and the overhead due to the startup latency of message passing. We implemented the proposed method using Message Passing Interface (MPI) on a state-of-the-art Myrinet cluster consisting of 128 processors. Compared with a baseline method, our technique results in improved scalability.

[1]  John Wawrzynek,et al.  High-throughput bayesian computing machine with reconfigurable hardware , 2010, FPGA '10.

[2]  Albert Y. Zomaya Parallel Computing for Bioinformatics and Computational Biology , 2005 .

[3]  David J. Spiegelhalter,et al.  Local computations with probabilities on graphical structures and their application to expert systems , 1990 .

[4]  David Heckerman,et al.  Bayesian Networks for Data Mining , 2004, Data Mining and Knowledge Discovery.

[5]  Chris H. Q. Ding,et al.  Bipartite graph partitioning and data clustering , 2001, CIKM '01.

[6]  K. Cameron,et al.  lognP and log3P: Accurate Analytical Models of Point-to- point Communication in Distributed Systems , 2006 .

[7]  D. Heckerman,et al.  ,81. Introduction , 2022 .

[8]  Takehiro Ito,et al.  Partitioning a Weighted Tree to Subtrees of Almost Uniform Size , 2008, ISAAC.

[9]  Viktor K. Prasanna,et al.  Scalable Node-Level Computation Kernels for Parallel Exact Inference , 2010, IEEE Transactions on Computers.

[10]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[11]  Michela Taufer,et al.  Study of a highly accurate and fast protein–ligand docking method based on molecular dynamics: Research Articles , 2005 .

[12]  Jaswinder Pal Singh,et al.  A parallel Lauritzen-Spiegelhalter algorithm for probabilistic inference , 1994, Proceedings of Supercomputing '94.

[13]  David A. Bader High-Performance Algorithm Engineering for Large-Scale Graph Problems and Computational Biology , 2005, WEA.

[14]  Ross D. Shachter,et al.  Global Conditioning for Probabilistic Inference in Belief Networks , 1994, UAI.

[15]  Andrew A. Chien,et al.  Study of a highly accurate and fast protein–ligand docking method based on molecular dynamics , 2005, Concurr. Comput. Pract. Exp..

[16]  Viktor K. Prasanna,et al.  Junction tree decomposition for parallel exact inference , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[17]  Viktor K. Prasanna,et al.  Distributed Evidence Propagation in Junction Trees , 2010, 2010 22nd International Symposium on Computer Architecture and High Performance Computing.

[18]  Peter Norvig,et al.  Artificial intelligence - a modern approach, 2nd Edition , 2003, Prentice Hall series in artificial intelligence.

[19]  Viktor K. Prasanna,et al.  Node Level Primitives for Parallel Exact Inference , 2007, 19th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD'07).

[20]  Viktor K. Prasanna,et al.  Parallel Evidence Propagation on Multicore Processors , 2009, PaCT.

[21]  David M. Pennock Logarithmic Time Parallel Bayesian Inference , 1998, UAI.

[22]  Rong Ge,et al.  $\log_{\rm n}{\rm P}$ and $\log_{3}{\rm P}$: Accurate Analytical Models of Point-to-Point Communication in Distributed Systems , 2007, IEEE Transactions on Computers.