我已经阅读了一些关于 EM 算法的解释(例如来自 Bishop 的模式识别和机器学习以及来自 Roger 和 Gerolami First Course on Machine Learning)。EM的推导没问题,我明白了。我也理解为什么算法会覆盖一些东西:在每一步我们都会改进结果,并且可能性以 1.0 为界,所以通过使用一个简单的事实(如果一个函数增加并且有界,那么它会收敛)我们知道算法会收敛到一些解决方案。
但是,我们怎么知道它是局部最小值呢?在每一步我们只考虑一个坐标(潜在变量或参数),所以我们可能会错过一些东西,比如局部最小值需要同时移动两个坐标。
我认为这与一般类爬山算法的问题类似,EM 就是其中的一个例子。因此,对于一般的爬山算法,我们对函数 f(x, y) = x*y 有这个问题。如果我们从 (0, 0) 点开始,那么只有同时考虑两个方向,我们才能从 0 值向上移动。