samdon / pmtk3

Automatically exported from code.google.com/p/pmtk3
0 stars 0 forks source link

EM does not monotonically increase likelihood when fitting HMM to single sparse sequence #22

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
 a=[1,2,3,4,5,6,1,2,3,4,5,6,6,5,4,3,2,1,1,2,3,31,31,2,32,12,4,5,60,0,2,1,3,4,5,81,32,2,1];

[model, loglikHist] = hmmFit(a, 2, 'discrete');

(This example is due to George Toderici)

What is the expected output? What do you see instead?

The penalizd log likelihood should go up, but instead it gives a warning that 
it does not.

Please use labels and text to provide additional information.

The problem is that the data involves a non consecutive set of integers, 
spanning 0 to 81. Internally this gets canonized to 1..12. However,there is 
still some residual problem. Perhaps the log prior on the transmat is not being 
added to the objective function.

Original issue reported on code.google.com by murphyk2 on 3 Apr 2011 at 2:12

GoogleCodeExporter commented 9 years ago
I think (as far as I understood the problem) we can get some solution from
http://sist.sysu.edu.cn/~syu/Publications/hsmmInitialize.m.txt
where one can "translate" 0 to 81 -(to)> 1..12 (alphabet) so

sequence=observable_values(indexes of observable values)

Original comment by RA.Dragun on 4 Apr 2011 at 6:24

GoogleCodeExporter commented 9 years ago
Yes, I added a 'canonizeLabels' command but I have not had time
to test this thoroughly. The correct solution is to allow/require the user
to specify the support of the alphabet of their data.

Original comment by murphyk2 on 4 Apr 2011 at 3:02

GoogleCodeExporter commented 9 years ago
Moved to GitHub: https://github.com/probml/pmtk3/issues/22

Original comment by irosen on 4 Jan 2014 at 2:34