我使用Kevin Murphy的机器学习工具包pmtk3在matlab中创建了一个遍历的hmm。问题是遍历hmm的工作正常,但我想为我的数据创建一个左右哼,以比较结果。我不确定如何正确地做到这一点。我尝试初始化状态转换矩阵,其中我不允许先前的状态,例如3状态HMM状态转换矩阵:
transmat = [0.5 0.4 0.0; 0.0 0.6 0.4; 0.0 0.0 1.0];
这不起作用,它会引发错误:
Error using chol
Matrix must be positive definite.
我迷失在这里,任何帮助将不胜感激。感谢
编辑:我正在使用的图书馆是https://github.com/probml/pmtk3
答案 0 :(得分:0)
确保行总和为1。 0.5 0.4 0.0没有...然后再试一次。