MLE 和 Baum Welch 在 HMM 拟合上的区别

机器算法验证 隐马尔可夫模型 期望最大化
2022-03-09 10:19:34

这个热门问题中,高投票的答案使 MLE 和 Baum Welch 在 HMM 拟合中分开。

对于训练问题,我们可以使用以下 3 种算法:MLE(最大似然估计)、Viterbi 训练(不要与 Viterbi 解码混淆)、Baum Welch = forward-backward 算法

但是在维基百科中,它说

Baum-Welch 算法使用众所周知的 EM 算法来找到参数的最大似然估计

那么,MLE 和 Baum-Welch 算法有什么关系呢?


我的尝试:Baum-Welch 算法的目标是最大化似然性,但它使用专门的算法 (EM) 来解决优化问题。我们仍然可以通过使用梯度下降等其他方法来最大化似然性。这就是为什么答案将两个算法分开的原因。

我是对的,谁能帮我澄清一下?

3个回答

请参阅您提供的问题链接中的答案之一(由 Masterfool 提供),

Morat 的回答有一点是错误的:Baum-Welch 是一种期望最大化算法,用于训练 HMM 的参数。它在每次迭代期间使用前向后向算法。前向-后向算法实际上只是前向和后向算法的组合:一次向前传递,一次向后传递。

我同意 PierreE 在这里的回答,Baum-Welch 算法用于解决 HHM 中的最大似然。如果状态是已知的(有监督的、标记的序列),则使用其他最大化 MLE 的方法(例如,简单地计算在训练数据中观察到的每个发射和转换的频率,参见Franck Dernoncourt 提供的幻灯片)。

在 HMM 的 MLE 设置中,我认为您不能只使用梯度下降,因为似然(或对数似然)没有封闭形式的解决方案,必须迭代求解,与中的情况相同混合模型,然后我们转向 EM。(请参阅 Bishop,模式识别书,第 13.2.1 章 Pg614 中的更多详细信息)

那么,MLE 和 Baum-Welch 算法有什么关系呢?

期望最大化(EM)算法更通用,Baum-Welch算法只是它的一个实例,EM是最大似然(ML)的迭代算法。那么 Baum-Welch 算法也是最大似然的迭代算法。

最大似然估计通常有三种优化算法(一种常客方法): 1)梯度下降;2)马尔可夫链蒙特卡洛;3)期望最大化。

这个问题已经存在了几个月,但这个答案可能会对新读者有所帮助,作为对 David Batista 评论的补充。

Baulm-Welch 算法 (BM) 是一种期望最大化算法,用于解决最大似然估计 (MLE),以便在状态未知/隐藏时训练您的 HMM(无监督训练)。

但是,如果您知道状态,则可以使用 MLE 方法(不会是 BM)以监督方式将您的模型拟合到配对数据/状态。