我想在hmmlearn中从GaussianHMM中导出反转矩阵和发射矩阵,并将这些矩阵作为c++编写的正向算法的模型参数,很明显"transmat_“属性就是反转矩阵,但是如何获得发射矩阵呢?模型的"means_“属性是否代表发射矩阵?谢谢!
请参考matlab工具箱中的hmmtrain方法,hmmtrain返回的第2个元素正是我想在hmmlearn中从GaussianHMM获取的元素:
https://cn.mathworks.com/help/stats/hidden-markov-models-hmm.html#f8288
发布于 2016-12-24 05:32:39
这是hmmlearn问题跟踪器中的recently discussed。
简而言之,可以通过_compute_log_likelihood计算矩阵,其中(t,i)-th元素是在状态i时看到观测X[t]的概率。
发布于 2021-10-13 15:02:55
通过使用GaussianHMM方法,您将不会有发射矩阵。该模型不能映射到离散状态。
它通过假设发射的高斯分布(因此是GaussianHMM),将离散隐藏状态映射到连续输出。因此,您的发射是通过训练的隐马尔可夫模型的均值和协方差属性来描述的。
对于您所描述的发射矩阵,您可能希望使用具有离散输出的MultinomialHMM。
https://stackoverflow.com/questions/40988173
复制相似问题