EM算法(Expectation Maximization Algorithm),通过求参数的最大似然估计,解决含隐变量的概率分布问题。
GMM(Gaussian Mixed Model),用正态分布的概率密度函数量化数据的分布,已到达聚类的目的。
因此,GMM可以理解为是一种带概率分布的聚类模型,而EM更像是实现GMM的一种思想或思维方式。
1、从Jesen不等式讲起
Jesen不等式 Jesen不等式的几何理解2、目标函数推导
ln函数为凹函数,不等式方向颠倒 目标函数示意图3、E步
E步关键:得到Q的计算公式参数初始化:
mu:用K-means生成
sigma:用特征的原始标准差
P:[0,1]均匀分布,生成k个
Q:0矩阵,shape = (nrow, k)
4、M步
根据GMM得到目标函数的具体形式,然后便可以用最大似然估计求参数mu, sigma, P 分别对mu和sigma求偏导=0,得到各自的计算公式 对P求偏导=0,注意约束条件,得到P的计算公式5、将更新后的mu, sigma, P代入E步,更新Q,依次循环迭代直至收敛
GMM推导过程看似繁琐,其实代码量极为简洁,只需梳理出推导过程中关键的计算步骤(红框部分)即可
过程图解:
网友评论