From: Janne G. <gr...@mo...> - 2005-12-23 22:03:52
|
On Friday 23 December 2005 22:28, Brian Eaton wrote: > Happy holidays, list - > > I've been confused by some of the validation done by the ghmm_d_check > function (I think it used to be called model_check). Yes it was model_check. We have renamed all externel functions to a saner and consistant naming schema. The next release will contain a perl script to replace most of the old names in C sources. > Models that I think should be valid generate errors from > ghmm_d_check. ghmm_d_check seems to be trying to make sure that all > of the input probabilities to a state sum to 1.0. But that doesn't > seem right to me. You're right that's incorrect, but it's already fixed in revision 1.69. > How should I set the out_a and in_a parameters to represent that > model? The obvious way seems to be like this: > > mo->s[0].out_states = 2; > mo->s[0].out_id = { 0, 1 }; > mo->s[0].out_a = { 0.1, 0.9 }; > mo->s[0].in_id = { 0, 1 }; > mo->s[0].in_a = { 0.1, 0.2 }; > > > mo->s[1].out_states = 2; > mo->s[1].out_id = { 0, 1 }; > mo->s[1].out_a = { 0.2, 0.8 }; > mo->s[1].in_id = { 0, 1 }; > mo->s[1].in_a = { 0.9, 0.8 }; This is the correct way. > So is the code here bogus, or is my example model out of whack? I > suppose both are possible. No your example is perfectly right. The code was an stupid copy and paste error (copied without thinking). Sorry for your inconvenience and thanks for reporting the bug. Happy holidays Janne |