Decoding Hidden Markov Models Faster than Viterbi Via Online Matrix-Vector $(\max, +)$-Multiplication

Massimo Cairo, Gabriele Farina, Romeo Rizzi

Abstract

In this paper, we present a novel algorithm for the maximum a posteriori decoding (MAPD) of time homogeneous Hidden Markov Models (HMM), improving the worst-case running time of the classical Viterbi algorithm by a logarithmic factor. In our approach, we interpret the Viterbi algorithm as a repeated computation of matrix-vector $(\max, +)$-multiplications. On time-homogeneous HMMs, this computation is online: a matrix, known in advance, has to be multiplied with several vectors revealed one at a time. Our main contribution is an algorithm solving this version of matrix-vector $(\max, +)$-multiplication in subquadratic time, by performing a polynomial preprocessing of the matrix. Employing this fast multiplication algorithm, we solve the MAPD problem in $O(mn^2/ \log n)$ time for any time-homogeneous HMM of size $n$ and observation sequence of length $m$, with an extra polynomial preprocessing cost negligible for $m>n$. To the best of our knowledge, this is the first algorithm for the MAPD problem requiring subquadratic time per observation, under the assumption – usually verified in practice – that the transition probability matrix does not change with time.

Bibtex entry

@inproceedings{Cairo16:Decoding, title={Decoding Hidden Markov Models Faster Than Viterbi Via Online Matrix-Vector (max,+)-Multiplication.}, author={Cairo, Massimo and Farina, Gabriele and Rizzi, Romeo}, booktitle={AAAI Conference on Artificial Intelligence}, pages={1484--1490}, year={2016} }

Download

Paper PDF

Bibtex entry

@inproceedings{Cairo16:Decoding, title={Decoding Hidden Markov Models Faster Than Viterbi Via Online Matrix-Vector (max,+)-Multiplication.}, author={Cairo, Massimo and Farina, Gabriele and Rizzi, Romeo}, booktitle={AAAI Conference on Artificial Intelligence}, pages={1484--1490}, year={2016} }

Typo or question?

Get in touch!
gfarina AT mit.edu

Metadata

Venue: AAAI 2016
Topic: Algorithms and Data Structures