Hidden Markov Model (HMM)
  1. Introduction/Tutorial

    1. HMM in Wikipedia
    2. L. R. Rabiner, "A Tutorial on HMM and Selected Applications in Speech Recognition," Proceedings of IEEE, vol. 7, no. 2, 1989. Note: It is a very classic and important paper to study HMM. Although some concepts in this paper are related to speech recognition, all importatnt terminologies of HMM are introduced in this tutorial paper. It is a MUST-READ paper.
    3. Book chapters
    4. Tutorials (Simple enough for HMM beginners)
      1. Markov Models and Hidden Markov Models: a brief tutorual, E. Fosler-Lussier, ICSI Technical Report TR-98-041, 1998.
        [File:external image pdf.png 1-Markov models and HMM- a brief tutorial.pdf] Note: It explains the HMM from Markov model, which starts with fundamental background of HMM.
      2. Hidden Markov Models: Fundamentals and Applications, Part 1: Markov Chains and Mixture Models, V. A. Petrushin, Online Symposium for Eletronics Engineer, 2000. [File: external image pdf.png 3-HMM-Fundamentals and Applications-Part1.pdf]
        Note: This tutorial includes two documents. Part 1 describes two basic concepts of HMM: Markov model and Gaussian Mixture model.
      3. Hidden Markov Models: Fundamentals and Applications, Part 2: Discrete and Continuous HMM, V. A. Petrushin, Online Symposium for Eletronics Engineer, 2000. [File: external image pdf.png 4-HMM-Fundamentals and Applications-Part2.pdf]
        Note: This is the part 2 of the HMM tutorial. It explains both discrete and continuous HMMs.
      4. What HMMs Can Do, J. A. Bilmes, UWEE Technical Report UWEETR-2002-0003, 2002. [File: external image pdf.png 2-What HMMs can do.pdf, Link]
        Note: This paper appears in the journal: IEICE - Transactions on Information and Systems, vol. E89-D, no. 3, 2006. It explains the relationship between HMM and graphical models. This paper is somewhat mathematical.
      5. Hidden Markov Models - A Tutorial for the course Computational Intelligence, B. Resch. [File]
        Note: The web page includes a matlab code .
  2. Applications

    1. Video Recognition
    2. Image Recognition
    3. Biosignal processing
  3. Algorithhms

    1. Viterbi

    2. Baum-Welch

  4. Library / Open Source

    1. [C] GHMM Library
      • The General Hidden Markov Model library (GHMM) is a freely available C library implementing efficient data structures and algorithms for basic and extended HMMs with discrete and continous emissions. It comes with Python wrappers which provide a much nicer interface and added functionality. The GHMM is licensed under the LGPL.
      • Features
        • Discrete and continous emissions
        • Mixtures of PDFs for continous emissions
        • Non-homogenous Markov chains
        • Pair HMMs
        • Clustering and mixture modelling for HMMs
        • Graphical Editor HMMEd
        • Python bindings
        • XML-based file format
        • Portable (autoconf, automake)
      • Publications
        • Michael Seifert Analyzing Microarray Data Using Homogenous and Inhomogenous Hidden Markov Models. Diplomarbeit im Studiengang Bioinformatik, Martin-Luther-Universität Halle (2006)
        • A. Schliep, B. Georgi, W. Rungsarityotin, I. G. Costa, A. Schönhuth The General Hidden Markov Model Library: Analyzing Systems with Unobservable States , Proceedings of the Heinz-Billing-Price 2004: 121-136
        • B. Knab, A. Schliep, B. Steckemetz and B. Wichern. Model-Based Clustering With Hidden Markov Models and its Application to Financial Time-Series Data. In Between Data Science and Applied Data Analysis, Springer, 561–569, 2003.
        • B. Georgi. A Graph-based Apporach to Clustering of Profile Hidden Markov Models Bachelor Thesis, FU Berlin.


    2. [M] Kevin Murphy's Matlab toolboxes: Hidden Markov models
      • Very good resource for HMM. Its Matlab codes can support discrete, Gaussian, and Gaussian mixtures PDF for output. Its new version is integrated into PMTK.
      • I will suggest using this toolbox for the test of the GHMM library, because this HMM toolbox provides a document of procedure to test continuous-output HMMs (Gaussian and Gaussian mixtures), including:
        • Generate sequence data of continuous output
        • Training the sequence data
        • Test the sequence data
        • Plot the sequence data
    3. [C] HTK: Hidden Markov Model Toolkit, 3.4.1, 2009. Microsoft.
      • The Hidden Markov Model Toolkit (HTK) is a portable toolkit for building and manipulating hidden Markov models. HTK is primarily used for speech recognition research although it has been used for numerous other applications including research into speech synthesis, character recognition and DNA sequencing. HTK is in use at hundreds of sites worldwide.
      • HTK was originally developed at the Machine Intelligence Laboratory (formerly known as the Speech Vision and Robotics Group) of the Cambridge University Engineering Department (CUED) where it has been used to build CUED's large vocabulary speech recognition systems (see CUED HTK LVR). In 1993 Entropic Research Laboratory Inc. acquired the rights to sell HTK and the development of HTK was fully transferred to Entropic in 1995 when the Entropic Cambridge Research Laboratory Ltd was established. HTK was sold by Entropic until 1999 when Microsoft bought Entropic. Microsoft has now licensed HTK back to CUED and is providing support so that CUED can redistribute HTK and provide development support via the HTK3 web site. See History of HTK for more details.
  5. Books

    • Hidden Markov Models - Applications in Computer Vision, H. Bunke and T. Caelli Eds., World Scientific, 2001.
    • Hidden Markov and Other Models for Discrete-valued Time Serise, I. L. MacDonald and W. Zucchini, Chapman & Hall, 1997.
    • Hidden Markov Models for Bioinformatics, T. Koski, Kluwer, 2001.
    • Inference in Hidden Markov Models, O. Cappe, E. Moulines, T. Ryden, Springer, 2005.