用于估计高维马尔可夫切换/HMM模型的似然函数的期望与直接数值优化



我目前正在使用对数似然函数的直接优化(通过正向-后向算法)来估计具有许多参数的马尔可夫切换模型。我使用 matlab 的遗传算法进行数值优化,因为其他方法,例如 fmincon 和 fminsearchbnd 中的(主要是基于梯度或单纯形的)算法不是很有用,因为似然函数不仅具有非常高的维数,而且还显示许多局部极大值并且是高度非线性的。遗传算法似乎工作得很好。但是,我计划进一步增加问题的层面。我读过一种EM算法来估计马尔可夫切换模型。据我了解,该算法会释放一系列递增的对数似然值。因此,估计具有非常多参数的模型似乎是合适的。

我的问题是EM算法是否适合我涉及许多参数的应用程序(也许更适合作为遗传算法)。速度不是主要限制(遗传算法非常慢),但我需要有一些确定性才能接近全局最优值,而不是遇到许多局部最优值之一。您对此有什么经验或建议吗?

EM 算法查找局部最优,并不保证它们是全局最优。事实上,如果你从一个转移概率为零的HMM开始,那么该概率通常永远不会从零开始变化,因为这些转换只会在期望步骤中出现零,所以这些起点没有希望找到一个没有转移概率为零的全局最优值。

对此的标准解决方法是从各种不同的随机参数设置开始,选择找到的最高局部最优值,并希望得到最好的结果。如果很大一部分运行收敛到相同(或等效)的最佳局部最优发现,您可能会稍微放心,因为不太可靠的理论认为至少从相同比例的随机启动中可以找到更好的东西,所以现在会出现。

我还没有详细研究出来,但EM算法解决了如此普遍的问题,我希望如果它保证找到全局最优,那么它将能够以前所未有的效率找到NP完全问题的解决方案。

最新更新