从极大似然估计到EM算法

极大似然估计:利用已知的样本结果信息,反推最具有可能(最大概率)导致这些样本结果出现的模型参数值!

极大似然估计提供了一种给定观察数据评估模型参数的方法,即:“样本已知,模型已定,参数未知”。

推导:要求的是argmax_\theta P(\theta|X),  根据贝叶斯公式,等于P(X|\theta)P(\theta) / P(X), 分母与\theta无关可以消去,等于P(X|\theta)P(\theta); P(\theta)这个先验概率,可以假设对所有\theta都相同(其实不一定是啊,正则化项相当于增大了数值小的\theta们的先验概率!L2正则项,相当于假设\theta服从高斯分布的!),化简为P(X|\theta); 可以假设X里的所有样本都是独立同分布的,得到P(X|\theta) = P(x1|\theta)*P(x2|\theta)*...*P(xn|\theta);  最开始的最大化后验概率P(\theta|X)转化成了最大化似然概率P(X|\theta)

求最大似然函数估计值的一般步骤

(1)写出似然函数;(样本们视为已知数,模型参数视为未知数

(2)对似然函数取对数,并整理;

(3)求导数,令导数为0,得到似然方程;

(4)解似然方程,得到的参数即为所求;

例子:已知一堆样本服从正态分布,求该正态分布的均值和方差;

解:套用以上4步;

 

EM算法的原理

已知样本集,已知分布的形式和个数,求解每个分布的参数;不知道每个样本是由哪个分布生成的;

1. 最终目的是极大化似然函数L(θ), 取lg之后等于\sum_{i}^{ } log p({x[i] | \theta ); log里面把log p({x[i] | \theta )化为log \sum_{z[i]}^{ } p({x[i],z[i] | \theta );

2. 这里如果直接对θ求偏导,对z[i]求偏导,难度非常大;解决办法:为每个样本引入分布Q_{i}(z[i]),加在分子和分母上转成log(sum_i(Q[z[i]] * (p/Q[z[i]]))), 因为log是凹函数,所以满足Jesen不等式的>=形式,即log(E[X])>=E[log(X)], 从而把Q[z[i]]提到了log前面,转换成sum_i(Q[z[i]] * log(p/Q[z[i]]));因为>=,所以原始L(θ)就有了下界函数;

3. E步. 求所有Q[z[i]],使得原始L(θ)=下界函数(θ); M步. 再固定Q[z[i]](即固定下界函数的样子),求解使得下界函数值最大的θ'

    解释:因为L(θ)永远>=下界函数,所以在该θ'上L(θ')>=下界函数(θ');  不等式传递得到L(θ)=下界函数(θ)<=下界函数(θ')<=L(θ'); 从而找到了新的θ'比老θ使得原始L的值更大;

3.E步 当对于所有的z[i], log(p/Q[z[i]])全部都等于任意常数C时,log(sum_i(Q[z[i]]*C))和sum_i(Q[z[i]]*logC))相等,都等于logC;联立方程组:log(p/Q[z[i]])=C,sum_i(Q[z[i]])=1,解得Q[z[i]] = p(z[i] | x[i]); 即得到了在θ上是L(θ)=下界函数(θ)的具体下界函数;

   M步 Q[z[i]]已知,求解使得下界函数sum_i(Q[z[i]] * log(p/Q[z[i]])) 最大化的θ

 

注意:EM算法是框架算法,任何分布都可以使用其去求最优参数使得似然函数最大化;

 

EM算法的例子:训练GMM

已知样本集合,已知样本是由N个高斯分布生成的(每个样本只由一个高斯分布生成),求:<各个高斯分布的概率,均值,协方差矩阵>

E-Step: Q[j] = p(z=j | x,θ) = p(z=j, x | θ) / p(x) = p(x | z=j,θ)*p(z=j | θ) / 分子去所有j之和 = 高斯分布生成x的概率 * 高斯分布j的概率 / 分子去所有j之和

M-Step: 下界函数里的p(z=j,x | θ)用和上式一样的条件概率公式得到p(x | z=j,θ)*p(z=j | θ), 最终式子里出现的是3组参数和所有样本x[i],对均值求导令其等于0,解得均值;协方差同理;高斯分布概率之和等于1,所以是带约束得最优化问题,用拉格朗日法求解;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值