EM算法(Expectation Maximization Algorithm),通过求参数的最大似然估计,解决含隐变量的概率分布问题。
GMM(Gaussian Mixed Model),用正态分布的概率密度函数量化数据的分布,已到达聚类的目的。
因此,GMM可以理解为是一种带概率分布的聚类模型,而EM更像是实现GMM的一种思想或思维方式。
1、从Jesen不等式讲起


2、目标函数推导


3、E步

参数初始化:
mu:用K-means生成
sigma:用特征的原始标准差
P:[0,1]均匀分布,生成k个
Q:0矩阵,shape = (nrow, k)
4、M步



5、将更新后的mu, sigma, P代入E步,更新Q,依次循环迭代直至收敛
GMM推导过程看似繁琐,其实代码量极为简洁,只需梳理出推导过程中关键的计算步骤(红框部分)即可
过程图解:



网友评论