https://github.com/sandialabs/chmmpy
Analysis of multivariate time series data to detect patterns using a Hidden Markov Model (HMM)
https://github.com/sandialabs/chmmpy
scr-3024 snl-data-analysis snl-science-libs
Last synced: 6 months ago
JSON representation
Analysis of multivariate time series data to detect patterns using a Hidden Markov Model (HMM)
- Host: GitHub
- URL: https://github.com/sandialabs/chmmpy
- Owner: sandialabs
- Created: 2024-06-05T15:04:21.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-04T19:52:41.000Z (almost 2 years ago)
- Last Synced: 2025-04-01T21:43:43.054Z (over 1 year ago)
- Topics: scr-3024, snl-data-analysis, snl-science-libs
- Language: Python
- Homepage:
- Size: 744 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# chmmpy
The chmmpy software supports the analysis of multivariate time series data to detect patterns using a Hidden Markov Model (HMM).
Many applications involve the detection and characterization of hidden or latent states in a complex system, using observable states and variables. The chmmpy software supports inference of latent states integrating both (1) a HMM and (2) application-specific constraints that reflect known relationships amongst hidden states. For example, HMMs have been widely used in natural language processing to tag the part of speech of words in a sentence (e.g. noun, verb, adjective, etc.). But in many applications there are known relationships that need to be enforced, such as the fact that a simple English sentence must contain at least one noun and exactly one verb.
The chmmpy software provides a generic framework for expressing application-specific constraints and supporting constrained HMM inference using optimization solvers. Although application-specific versions of the well-known Viterbi inference algorithm can often be developed, the generic framework supported by chmmpy enables the agile expression of complex sets of constraints that naturally arise in many real-world applications. Optimization constraints can be expressed in chmmpy using the pyomo modeling framework, and these models can be solved with a variety of commercial and open source source optimization solvers.