1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| % initial guess of parameters
prior1 = normalise(rand(Q,1));
transmat1 = mk_stochastic(rand(Q,Q));
obsmat1 = mk_stochastic(rand(Q,O));
% improve guess of parameters using EM
[LL, prior2, transmat2, obsmat2] = dhmm_em(data, prior1, transmat1, obsmat1, 'max_iter', 10);
LL;
% use model to compute log likelihood
loglik = dhmm_logprob(data, prior2, transmat2, obsmat2);
% log lik is slightly different than LL(end), since it is computed after the final M step
%plot (prior1,'displayName');figure(gcf);
transmat1;
obsmat1; |
Partager