Hc's blog

Hc's blog: R与统计学习基础

机器学习与人工智能 浙江大学 中国大学MOOC(慕课)

聚类分析EM聚类:高斯混合模型(GMM)

聚类分析

无监督学习可学习没有任何标签的聚类/群组,可应用于客户细分(即分组)、图像压缩、生物信息学。

另一类无监督学习:建模(模型的概率/参数)。例如学习翻译词典、语言的语法和社交图等。

聚类:通过对数据特征进行学习,将一组对象分组为类似对象的过程。

聚类算法

硬聚类和软聚类

硬聚类:每个数据只属于一个类

软聚类:一个数据可以属于多个类(概率),这对于创建可浏览 层次结构等应用程序更有意义

谱聚类和K-均值算法已经写过,可以见Hc's blog: 聚类和主成分

这里再作稍许补充

后文详细介绍EM聚类

EM聚类:高斯混合模型(GMM)

假设数据从高斯混合分布(椭圆数据)产生,以一定的概率分配一个点到聚类中心,结果为分组的概率(软聚类)。

EM算法:存在“未观测”变量的情形下, 对模型参数进行估计。 未观测变量的学名是“隐变量”(latent variable)。令 表示已观测变量集, 表示隐变量集, 表示模型参数。若欲对 做极大似然估计,则应最大化对数似然

然而由于 是隐变量,上式无法直接求解。此时我们可通过对 计算期望,来最大化已观测数据的对数 “边际似然”(marginal likelihood)

EM (Expectation-Maximization) 算法 [Dempster et al., 1977 是常用的估计参数隐变量的利器,它是一种迭代式的方法,其基本想法是:

进一步,设共有个样本

其中是隐变量的概率分布,所以.

最后的不等式是因为Jensen不等式,是上凸函数{}。等号成立条件为常数,即

其在固定的条件下为常数,因此等号成立。

由此,EM算法可以改写为

EM算法应用广泛,如训练HMM(Baum-Welch算法),学习贝叶斯网络的概率,EM-聚类,学习单词对齐语言翻译,学习微信好友网络等。

EM聚类

为第个样本属于的概率,设随机变量个高斯分布混合而成,则. 取各个高斯分布的概率为,且. 来自随机变量维样本.

于是其概率密度函数为

由此,隐变量 ,其中表示样本的高斯混合成分,参数.

根据EM算法

参数的似然函数为

最终参数更新可简化为.

最后收敛后,进行簇划分,属于簇.