1. Kmeans 和 GMM的对比
- Kmeans : 硬聚类
- GMM: 软聚类
- 软聚类可以转化为硬聚类,因此 Kmeans 算法是 GMM算法的一个特例
为什么需要软聚类呢?如一个人属于什么社区
用 Kmeans : 这个人只能属于一个社区如 体育
用GMM : 则这个人可以属于多个社区如体育,音乐和艺术等
在比如拟合数据点,一个高斯分布拟合效果肯定不如两个
生成样本点过程;框框相当于 for 循环
2. 多元高斯分布∑的一些特性
∑决定GMM的分布形状,μ决定GMM的位置
2.1
2.2
3.GMM的对数似然函数
z 是第几个高斯分布,如 z=1 为第1个高斯分布,z的取值范围是(1,2,…K)
4.GMM的EM算法
参考博文EM算法轻松理解,可知
E-step具体过程
E-step需要计算 z 等于每个高斯分布类别的概率
M-step具体过程
r_ik是E-step中已经求出的
1.求μ_k
求导部分可搜索:matrix cookbook,里面有很多求导公式。
公式 78 就是求导要用的,代入数据B = -1, x = μ_k, b = xi, c = ∑_k的转置, D = -1, d = x1
2.求∑k
先放上求导公式用到的公式
49
公式61
3. 求π_k
因为π_k有约束,即∑π_k = 1, 所以用拉格朗日函数去求
[1] 参考:EM算法轻松理解