我想用隐马尔可夫模型训练序列分类器。观测序列的长度不是固定的。我尝试了一些HMM包,如Matlab的HMM工具箱和Kevin的库。它们似乎都要求用户指定转移概率矩阵和发射概率矩阵的大小。
我知道,对于隐马尔可夫模型(HMM),转移概率矩阵和发射概率矩阵的大小取决于隐态数和观测序列的长度。
例如,如果:
states = ('Rainy','Sunny')
observations = ('walk', 'shop', 'clean')
状态数为2,观察长度为3,则跃迁概率为2x2矩阵。然而,发射概率将是一个2x3矩阵。
如果观测序列的长度不是固定的呢?
例如:
observation 1 = ('walk', 'shop', 'clean')
observation 2 = ('walk', 'shop', 'clean','eat pizza')
observation 3 = ('walk', 'shop', 'clean','drink beer','eat pizza')
...so on
在这种情况下,发射概率矩阵的大小是多少?或者我可以通过填充零来使观测序列保持相同的长度吗?
发布于 2018-08-04 06:06:18
不用担心,观察的时间长短将有助于模型的训练。更长的长度,前向后的阿尔戈/博姆韦尔奇阿尔戈的训练会更好。但观察的时间长短与预测无关。看我的博客吧-
http://machinelearningstories.blogspot.com/2017/02/hidden-markov-model-session-1.html
转换概率会给出下一个隐藏状态。从下一个隐藏状态,你可以得到下一个observation.So观测数,只要你有训练的模型(发射和转移概率)就不重要了。此外,如果详细了解下一个状态将如何计算,请遵循下面的文章。
http://machinelearningstories.blogspot.com/2017_03_01_archive.html
https://datascience.stackexchange.com/questions/35779
复制相似问题