Bayesian model-based online sequence segmentation

Bayesian algorithm for segmenting real-valued input-output data into non-overlapping segments
700 Downloads
Updated 21 Mar 2014

View License

The Bayesian model-based online sequence segmentation (BMOSS) class implements a recursive algorithm for partitioning a sequence of real-valued input-output data into non-overlapping segments. The segment boundaries are chosen under the assumption that, within each segment, the data follow a multi-variate linear model.

Segmentation is carried out in an online fashion by recursively updating a set of hypotheses. The hypotheses capture the belief about the current segment, e.g. its duration and the linear relationship between inputs and outputs, given all the data so far. Each time a new pair of data is received, the hypotheses are propagated and reweighted to reflect this new knowledge.

This submission includes a test function that generates a set of synthetic data and compares the true segment boundaries against those identified by a BMOSS object.

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 (bmosstest.m) for a demonstration.

Cite As

Gabriel Agamennoni (2024). Bayesian model-based online sequence segmentation (https://www.mathworks.com/matlabcentral/fileexchange/45560-bayesian-model-based-online-sequence-segmentation), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.0.0

Major extension and minor bug fix.

1.1.0.0

Minor bug fix and slight generalization.

1.0.0.0