Dimple is a software tool that performs inference and learning on probabilistic graphical models.  The inference can be performed with belief propagation algorithms or sampling based algorithms.  Dimple is open source and is maintained as a Github project.

Features include
  • MATLAB and Java APIs.
  • Inference techniques include the sum-product, min-sum, particle BP, and Gibbs algorithms.
  • Supports arbitrary discrete variables.
  • Some solvers support continuous variables (namely Particle BP, Gibbs, and Gaussian)
  • Allows rapid prototyping of complicated graphical models by describing connectivity with simple associations of factors with variables.
  • Supports nested graphs.
  • Rolled up graphs.
  • Implements some parameter learning.

A more detailed description can be found in this ArXiv article.


Dimple has been released under the Apache License 2.0, and is free to use for commercial or academic purposes. However, please acknowledge its use with a citation:
 author = {Shawn Hershey and 
           Jeffrey Bernstein and 
           Bill Bradley and 
           Andrew Schweitzer and
           Noah Stein and 
           Theophane Weber and 
           Benjamin Vigoda}, 
 title = {Accelerating Inference: towards a full Language, Compiler and Hardware stack}, 
 journal = {CoRR}, 
 volume = {abs/1212.2991}, 
 year = {2012}, 
 ee = {http://arxiv.org/abs/1212.2991}, 
 bibsource = {DBLP, http://dblp.uni-trier.de} }


Contact Us

If you have issues using Dimple, feel free to contact us at: dimple_support@groups.lyricsemiconductor.com

Dimple has been developed at Lyric Labs at Analog Devices, inc.