How many observations should you present to "hmmdecode" in order to get a reliable estimate of state?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
MathWorks Support Team
il 21 Ago 2014
Modificato: MathWorks Support Team
il 25 Feb 2021
Assume that I present 9000(the past 9000 days) observations to "hmmestimate" and now have my estimated transmission and emission matrices. If I wanted to determine what state I am in today, how many observations I would pass to "hmmdecode"? Does it matter if I present the last 20( 20 days) observations to "hmmdecode" or if I just present the most recent observation(today)?
Risposta accettata
MathWorks Support Team
il 25 Feb 2021
Modificato: MathWorks Support Team
il 25 Feb 2021
This is problem dependent, it depends on the transition matrix. Firstly, when using an HMM for prediction, it is enough to look at the forward probabilities (third output argument of "hmmdecode").
To understand the transient of the model one can plot the forward probability in the last time point versus different sequence lengths.Example:
tr = [0.95,0.05; 0.10,0.90];e = [1/6, 1/6, 1/6, 1/6, 1/6, 1/6;1/10, 1/10, 1/10, 1/10, 1/10, 1/2;]; obs = randi(6,[1,1000]);
for i = 1:100[p,l,f,b] = hmmdecode(obs(end-i:end),tr,e);fp(:,i) = f(:,end);end
figureplot(fp')xlabel('Seq length')ylabel('\alpha_t_+_1')title('Forward probability vs Sequence Length')
If you do not have an ergodic transition probability, you may augment your model as explained in
to set a different initial state distribution, this will help minimizing the effects of the transient.
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Markov Chain Models in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!