Take the 2-minute tour ×
Cross Validated is a question and answer site for people interested in statistics, machine learning, data analysis, data mining, and data visualization. It's 100% free, no registration required.

I have a sequence of two possible observations ($A$, $B$) and want to train an HMM with $h$ states, namely $\lambda_h$, to predict the probability of the next observation using the Baum-Welch algorithm. Output probability distributions are Bernoulli with parameter $p_i$ ($i$ is the state number).

My problem is mainly with the initialization. If $\lambda_h$ is initialized to a totally random HMM, results of learning are poor. On the other hand, the K-Means initialization algorithm assigns zero initial probability ($\pi_i$) to some states if $h > 2$, preventing BW from improvements. I use a 4-state HMM ($\lambda^0_4$) to generate my test sequences. Hence trying $h=4$ should be totally possible!

Any ideas?


Parameters of $\lambda^0_4$:

Transition probabilities: $A_{i,i}$ = 0.4, $A_{i,j\neq i}$=0.2

Observation probability distributions: $p_0$=1.0, $p_1$=0.7, $p_2$=0.3, $p_3$=0.0

Initial state probabilities: $\pi_i$ = 0.25

share|improve this question
add comment

1 Answer

You might want to try the rule of succession. Just add $1/n$ to all your $\pi_i$ (where $n$ is the number of training examples).

This is, of course a heuristic. But K-Means initialization is one as well.

share|improve this answer
    
Do you mean adding $1/n$ to the $\pi_i$'s resulted from K-Means and then normalizing? It doesn't work, as the contribution is too little (e.g. for $n$=300). –  Sadeghd Sep 3 '11 at 16:32
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.