EM算法、k-means、GMM

EM算法针对是有隐藏变量的无监督问题。
已知:观察到一组变量 x 1 , x 2 , . . . , x n (由隐藏变量 Z 决定), P ( Z | X , θ ) P ( X | Z , θ )
求解:在损失函数 L ( X | θ ) 下的最优解 Z , θ
理论推导:
L ( X | θ ) = l o g   p ( X | θ )
= l o g [ Z p ( X , Z | θ ) ]
= l o g [ Z p ( X | Z , θ ) p ( Z | θ ) ]
= l o g [ Z p ( Z | X , θ ( i ) ) p ( X | Z , θ ) p ( Z | θ ) p ( Z | X , θ ( i ) ) ]
Z p ( Z | X , θ ( i ) ) l o g [ p ( X | Z , θ ) p ( Z | θ ) p ( Z | X , θ ( i ) ) ]
最大化 Z p ( Z | X , θ ( i ) ) l o g [ p ( X | Z , θ ) p ( Z | θ ) p ( Z | X , θ ( i ) ) ] ,显然 θ ( i ) 单调递增(因为每次都是最大化下限,下限就是 L ( X | θ ( i ) )
最大化下限这步叫做M步(maximization),求 p ( Z | X , θ ( i ) ) 这步叫E步骤(expectation)。

实例:
k-means
已知:观察到一组变量 x 1 , x 2 , . . . , x n θ k 个中心点; Z X 属于哪个中心, P ( Z | X , θ ) 为离那个中心近,相应的 Z 的分量为1; P ( X , Z | θ ) θ 为对应类别的中心时概率为1,其他概率为0。
LOSS: X 距离最近类别的中心的距离和。
E步:求 X 属于 k 个中的那一类,即求 Z
M步:求在 X , Z 条件下 θ 的值。

Guass Mixture Model
已知:观察到一组变量 x 1 , x 2 , . . . , x n θ k 个高斯分布和相应的权重; P ( Z | X , θ ) 为属于哪个高斯分布的概率; P ( X , Z | θ ) 当在 X , Z 条件下,高斯分布的参数。
LOSS: X 距离最近类别的中心的距离和。
E步:求 X 对应的 Z
M步:求在 X , Z 条件下 θ 的值。

k-means优点:计算简单;缺点:当不同类别的范围不同时,可能会不准确
GMM有点:精确,除了聚类,还可以拟合概率分布;缺点:计算复杂

补充:当中心数目不确定时,可以多取几个k值,计算轮廓系数的方法来得出最优的k值。

猜你喜欢

转载自blog.csdn.net/SrdLaplace/article/details/80994114