EM算法与高斯混合模型GMM

文章目录

      • 凸函数
      • Jensen不等式
      • 极大似然估计
      • EM算法
      • GMM(高斯混合模型)
      • GMM算法流程
      • 代码实现

凸函数

通常在实际中,最小化的函数有几个极值,所以最优化算法得出的极值不确实是否为全局的极值,对于一些特殊的函数,凸函数与凹函数,任何局部极值也是全局极致,因此如果目标函数是凸的或凹的,那么优化算法就能保证是全局的。
EM算法与高斯混合模型GMM_第1张图片
EM算法与高斯混合模型GMM_第2张图片

Jensen不等式

EM算法与高斯混合模型GMM_第3张图片

极大似然估计

一般说来,事件A发生的概率与某一未知参数θ有关,θ的取值不同,则事件A发生的概率P(A|θ)也不同,当我们在一次试验中事件A发生了,则认为此时的θ值应是t的一切可能取值中使P(A|θ)达到最大的那一个,极大似然估计法就是要选取这样的t值作为参数t的估计值,使所选取的样本在被选的总体中出现的可能性为最大

EM算法

EM算法公式的推导:
EM算法与高斯混合模型GMM_第4张图片
EM算法流程:
EM算法与高斯混合模型GMM_第5张图片

GMM(高斯混合模型)

EM算法与高斯混合模型GMM_第6张图片
πk相当于Qi,N(x|μk,Σk)相当于P(x(i),z(i)|θ)。第k个分量相当于第k类。x中的i代表第i个样本。
EM算法与高斯混合模型GMM_第7张图片
nk代表第K个模型中一共有多少个样本,N表示K个模型中一共有多少个样本。
EM算法与高斯混合模型GMM_第8张图片
j代表迭代次数,L值就是log§的期望,rik就职指第i个样本来自第k个模型的概率的期望,nk表示第k个模型中有多少个个体。后续求导对应主要是第三条红线标记的位置。nk是可以提前算出来。
EM算法与高斯混合模型GMM_第9张图片

GMM算法流程

EM算法与高斯混合模型GMM_第10张图片

代码实现

数据的加载,与每个个体属于第k个类的概率值的初始化,以及相对应的原始个体类别分布图:
EM算法与高斯混合模型GMM_第11张图片
EM算法与高斯混合模型GMM_第12张图片
迭代更新:EM算法与高斯混合模型GMM_第13张图片
M步骤:
EM算法与高斯混合模型GMM_第14张图片
EM算法与高斯混合模型GMM_第15张图片
E步骤:
在这里插入图片描述
EM算法与高斯混合模型GMM_第16张图片
EM算法与高斯混合模型GMM_第17张图片
在这里插入图片描述
计算L(θ,θ(j)):
在这里插入图片描述
EM算法与高斯混合模型GMM_第18张图片
迭代4次后:
EM算法与高斯混合模型GMM_第19张图片
迭代6次后:
EM算法与高斯混合模型GMM_第20张图片
迭代结束后:
EM算法与高斯混合模型GMM_第21张图片
EM算法与高斯混合模型GMM_第22张图片
小于e就终止迭代了。

代码:链接:https://pan.baidu.com/s/13ofsNRWD25dqLNWPa6J3dg
提取码:1ftq

参考资料:
参考EM算法的推导
参考GMM模型的推导

你可能感兴趣的:(算法,算法,概率论,机器学习)