Bayesian robust hidden Markov model

MatLab object for segmenting sequences of real-valued data with noise, outliers and missing values.

You are now following this Submission

The Bayesian robust hidden Markov model (BRHMM) is a probabilistic model for segmenting sequential multi-variate data. The model explains the data as having been generated by a sequence of hidden states. Each state is a finite mixture of heavy-tailed distributions with with state-specific mixing proportions and shared location/dispersion parameters. All parameters in the model are equipped with conjugate prior distributions and are learnt with a variational Bayesian (vB) inference algorithm similar in spirit to expectation-maximization. The algorithm is robust to outliers and accepts missing values.

This submission includes a test function that generates a set of synthetic data and learns a model from these data. The test function also plots the data segmented according to the model, and the variational lower bound on the log-likelihood of the data after each vB iteration.

If you find this submission useful for your research/work please cite my MathWorks community profile. Feel free to contact me directly if you have any technical or application-related questions.

INSTRUCTIONS:

After downloading this submission, extract the compressed file inside your MatLab working directory and run the test function (TestBRHMM.m) for a demonstration.

Cite As

Gabriel Agamennoni (2026). Bayesian robust hidden Markov model (https://uk.mathworks.com/matlabcentral/fileexchange/43616-bayesian-robust-hidden-markov-model), MATLAB Central File Exchange. Retrieved .

Acknowledgements

Inspired: MS-TVTP with Gibbs Sample

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and MATLAB Answers

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.2.0.0

Minor changes in the code and updates to the documentation.

1.1.0.0

Minor code improvements.

1.0.0.0