数学之美:期望最大化算法

前面多次介绍到文本分类,一是互联网各方面都会用到这些技术,另一方面这些技术几乎可以用到所用分类中。如用户分类、词分类、商品分类、甚至生物特征和基因分类等。在文本分类中有个极其强大的技术:期望最大化算法。

文本的自收敛分类:

期望最大化和收敛的必然性:

我们的目的是相近的点都被聚集到一个类别。同一类中各个点到中心的平均距离d较小,而不同类别间的中心的平均距离D较大。我们希望每一个迭代都会d比以前小,而D比以前大。

将上面思想推广至一般机器学习,实际上包括两个过程和一个目标函数。

1、根据现有聚类结果,对所有数据点进行重新划分。

2、根据重新划分结果,得到新的聚类。

3、整个流程最大化目标就是点到聚类中心距离d和类间距离D。

首先计算各个观测数值输入到模型的结果,这过程叫做期望值计算过程;然后重新计算模型以最大化期望值成为最大化过程。这类算法统称为EM算法(Expectation Maximization)。

前面介绍到的很多算法其实都是EM算法。如隐马尔可夫模型中的训练算法Baum-Welch,E过程根据现有模型计算每个状态之间转移次数和每个状态的输出次数,M过程就是根据这些次数重新估算隐马尔科夫模型的参数。其最大化目标函数是观测值的概率。以及最大熵模型的训练算法GIS算法,E过程利用现有模型计算每个特征的数学期望值,M过程就是根据这些特征的数学期望和实际观测值的比值,调整模型参数,最大化目标函数是熵函数。

另外EM算法是否能够获得全局最优解?如果我们的目标函数是凸函数,那么一定可以获得全局最优解。而我们的熵函数是凸函数,如果在N维空间使用欧式距离做度量,聚类中我们试图优化的两个函数也是凸函数。但很多情况,如文本分类中的余弦距离不能保证是凸函数,因此EM算法有可能给出局部最佳解。吴军大牛称之为上帝算法。

猜你喜欢

转载自blog.csdn.net/qq_16234613/article/details/82838533
今日推荐