Machine learning 隐马尔可夫模型:是否可能随着状态数的增加,精度降低?

Machine learning 隐马尔可夫模型:是否可能随着状态数的增加,精度降低?,machine-learning,hidden-markov-models,markov,unsupervised-learning,markov-models,Machine Learning,Hidden Markov Models,Markov,Unsupervised Learning,Markov Models,我使用Baum-Welch算法为越来越多的状态构建了两个隐马尔可夫模型。我注意到在8个州之后,验证分数下降了超过8个州。所以我想知道,由于某种过度拟合,隐马尔可夫模型的精确度是否可能随着状态数量的增加而降低 提前谢谢 为了清楚起见,我在这里提出一个非常简单的现象说明 假设你用数据序列(A-B-A-B)训练你的HMM。 假设你使用了一个2状态的HMM。 自然,状态1将优化自身以表示A,状态2将表示B(或相反)。 然后,你有一个新的序列(a-B-a-B)。你想知道这个序列对于你的HMM的可能性。 维

我使用Baum-Welch算法为越来越多的状态构建了两个隐马尔可夫模型。我注意到在8个州之后,验证分数下降了超过8个州。所以我想知道,由于某种过度拟合,隐马尔可夫模型的精确度是否可能随着状态数量的增加而降低


提前谢谢

为了清楚起见,我在这里提出一个非常简单的现象说明

假设你用数据序列(A-B-A-B)训练你的HMM。 假设你使用了一个2状态的HMM。 自然,状态1将优化自身以表示A,状态2将表示B(或相反)。 然后,你有一个新的序列(a-B-a-B)。你想知道这个序列对于你的HMM的可能性。 维特比算法将发现最可能的状态序列是(1-2-1-2),而鲍姆-韦尔奇算法将为该序列提供高可能性,因为状态序列和新序列的“值”(如果使用连续数据)与您的训练序列明显匹配

现在假设您使用相同的训练序列(a-B-a-B)训练一个3状态HMM。数据的初始聚类很可能会将HMM的前两个状态分配给符号A的表示,最后一个状态分配给符号B(或者再次分配相反的状态)

现在,查询序列(A-B-A-B)可以表示为状态序列(1-3-1-3)或(2-3-2-3)或(1-3-2-3)或(2-3-1-3)! 这意味着对于这种三态HMM,两个相同的序列(A-B-A-B)对于HMM可能具有较低的相似性。这就是为什么对于任何HMM和任何数据集,超过一定数量的状态后,性能会降低的原因

您可以使用诸如贝叶斯信息准则、Akaike信息准则、最小消息长度准则之类的准则来估计最佳状态数,或者,如果您只是想得到一个模糊的概念,则可以使用结合方差百分比的k均值聚类。前三个标准很有趣,因为它们包含了一个与模型参数数量相关的惩罚项


希望有帮助!:)

你觉得奇怪吗?只有一种状态是正确的,您现在可以提供更多的选择。你不认为问题会变得更难吗?