Friday, 19 December 2014

infer-hmm: An Infer.NET implementation of the hidden Markov model

The hidden Markov model is a popular statistical tool for modelling sequential data, and as such has received much attention from the field of non-intrusive load monitoring. However, the community has lacked general tools to perform scalable approximate Bayesian inference in HMMs, which has limited the speed of research in this field. For this reason, today I'm open sourcing infer-hmm: An Infer.NET implementation of the hidden Markov model. The aim of the project is to make it easy to run approximate Bayesian inference over both the model parameters and states of a hidden Markov model. The model is built using the Infer.NET framework for Bayesian inference in graphical models, and as such can make use of industry strength algorithms for running approximate inference. Special thanks go to Microsoft Research for adding support for chain models, and to Matteo Venanzi for his expertise in increasing the efficiency of the model.