Questions tagged [viterbi]

The Viterbi algorithm is a dynamic programming algorithm for finding the most likely sequence of hidden states—called the Viterbi path—that results in a sequence of observed events, especially in the context of Markov information sources and hidden Markov models. Use this tag for questions about this algorithm.

The Viterbi algorithm is a dynamic programming algorithm for finding the most likely sequence of hidden states—called the Viterbi path—that results in a sequence of observed events, especially in the context of Markov information sources and hidden Markov models.

The algorithm has found universal application in decoding the convolutional codes used in both CDMA and GSM digital cellular, dial-up modems, satellite, deep-space communications, and 802.11 wireless LANs. It is now also commonly used in speech recognition, speech synthesis, diarization,1 keyword spotting, computational linguistics, and bioinformatics. For example, in speech-to-text (speech recognition), the acoustic signal is treated as the observed sequence of events, and a string of text is considered to be the "hidden cause" of the acoustic signal. The Viterbi algorithm finds the most likely string of text given the acoustic signal. (src: Wikipedia)

84 questions
3
votes
0 answers

Bad quality of Viterbi Algorithm (HMM)

I've been trying to get into hidden Markov models and the Viterbi algorithm recently. I found a library called hmmlearn (http://hmmlearn.readthedocs.io/en/latest/tutorial.html) to help me generate a state sequence for two states (with Gaussian…
Billy
  • 31
  • 5
3
votes
0 answers

Top k-best paths in HMM with k > number of hidden states

I have implemented a k-best Viterbi algorithm in order to extract k-best paths through an HMM as described here. However, I get an error in case k is greater than the number of hidden states. Consider the following: At the first observation at time…
David Ba
  • 31
  • 3
3
votes
2 answers

New to functional programming

Hey, I'm really new to Haskell and have been using more classic programming languages my whole life. I have no idea what is going on here. I'm trying to make a very simple Viterbi algorithm implementation, but for only two states (honest and…
Overflown
  • 1,830
  • 2
  • 19
  • 25
3
votes
1 answer

Matlab - Generating HMM

Let's assume that I have a random set of observations: obs = [1, 2, 3, 5, 5, 5, 5, 5] These observations represent 1 state in the HMM. In Matlab, I want to model these observations so then I can use the Viterbi algorithm in order to create a kind of…
Phorce
  • 4,424
  • 13
  • 57
  • 107
3
votes
1 answer

Viterbi decoding of punctured convolutional codes

I'm trying to learn more about convolutional encoding/decoding in the context of OFDM/802.11a. To that end, I've tried my hand at implementing the encoder/decoder from the 802.11a specification. However, I may be misunderstanding the goal of the…
tdenniston
  • 3,389
  • 2
  • 21
  • 29
3
votes
0 answers

Viterbi decoding problems

I've been trying to get a Viterbi C/C++ decoder working for the last few weeks. For some reason I can't get it working. I initially started with Phil Karn's FEC library: http://www.ka9q.net/code/fec/ But this code doesn't want to compile for 64-bit…
Nick
  • 258
  • 4
  • 14
3
votes
1 answer

Getting the next observation from a HMM gaussian mixture distribution

I have a continuous univariate xts object of length 1000, which I have converted into a data.frame called x to be used by the package RHmm. I have already chosen that there are going to be 5 states and 4 gaussian distributions in the mixed…
h.l.m
  • 13,015
  • 22
  • 82
  • 169
2
votes
1 answer

Viterbi algorithm for real-time applications

I know that given an HMM and an observation, Viterbi algorithm can guess the hidden states sequence that produce this observation. But what about the case you want to use it real-time? I mean finding the hidden states step by step. Every time an…
2
votes
0 answers

Viterbi decoder for meteor M2 and similar satellites

I am working on decoding QPSK from Meteor M2 satellites and BPSK from Cubesats (like Funcube). I have reached to a point where I am able to get the constellation and get the soft bits (A blog about the progress) from RTLSDR IQ recordings. To further…
7andahalf
  • 71
  • 4
2
votes
0 answers

How to use Viterbi decoder from GNU Radio library

I need to make Viterbi decoding of some convolutional-encoded signal. My application shall work with large files, therefore I cannot insert all the signal into a heap, so I need to process a data by a sequence of separate buffers. I have found a…
Vladimir Bershov
  • 2,701
  • 2
  • 21
  • 51
2
votes
3 answers

Basic Hidden Markov Model, Viterbi algorithm

I am fairly new to Hidden Markov Models and I am trying to wrap my head around a pretty basic part of the theory. I would like to use a HMM as a classifier, so, given a time series of data I have two classes: background and signal. How are the…
dan burke
  • 53
  • 7
2
votes
0 answers

HMM Error in if (d < delta) { : missing value where TRUE/FALSE needed

I have some problems with the viterbiTraining function from the HMM package. I tried using it on a pretty straightforward hmm and a vector of observations. Here's the…
2
votes
1 answer

What does this line in the Viterbi algorithm specifically do?

I am more concerned in understanding the assignment arrow to the left followed by max s'=1 to N. Disregard the semantics of the variables. Thank you!
tanasn
  • 39
  • 6
2
votes
0 answers

Viterbi Algorithm Matlab

I'm trying to implement Viterbi Algorithm in Matlab and for some reason on my induction part after the first pass of i the alpha turns to 0. I.E. V = 0.7000 0 0.0980 0 V = 0.7000 0 0 0 V = 0.7000 0 …
FlameArc
  • 21
  • 1
  • 2
2
votes
2 answers

Understanding the Viterbi algorithm

I was looking for a precise step by step example of the Viterbi algorithm. Considering sentence tagging with the input sentence as: The cat saw the angry dog jump And from this I would like to generate the most probable output as: D N V T A N…
user1695019
  • 51
  • 1
  • 4