em算法的一些理解

来源:互联网 发布:apache 下载php文件 编辑:程序博客网 时间:2024/06/07 04:03

数据:
不完全数据,即含有隐变量——无法观测的变量

目的:
求出模型中所有参数的合理估计。

为什么使用em算法:
不同于极大似然估计,可以显式的求出使得数据似然度最大的参数,在含有隐变量的模型中,由于需要对隐变量做全概率展开,所以最终的似然函数是求和的形式,而且关键的是没有隐变量数据所以无法求出最大似然度对应的参数

em算法需要克服以下的障碍:
1. 我们的目的是估计参数,但是现在数据有缺失,所以无法使用极大似然法。
2. 我们想直接猜测缺失数据的分布(然后使用极大似然法),却又没有模型参数

所以我们的做法是:直接给出一个参数的初始值,然后计算缺失数据的分布,然后再使用缺失数据进行对参数进行修正,
不断地 1. 修正缺失数据分布,2. 修正参数分布,直至收敛。

为什么是给出参数初始值而不是缺失数据分布初始值:
理论上给出缺失数据分布初始值也是可行的,只不过参数初始值可能更有意义,也就是人们更加理解它的实际意义,例如再三硬币模型中给所有参数的初始值都是0.5,这很符合直觉,而我们可能很难给出每次A是正面或反面的初始值。