本文我们讨论期望最大化理论,应用和评估基于期望最大化的聚类。
软件包
数据
我们将使用mclust软件包附带的“糖尿病”数据。
data(diabetes) summary(diabetes) ## class glucose insulin sspg ## Chemical:36 Min. : 70 Min. : 45.0 Min. : 10.0 ## Normal :76 1st Qu.: 90 1st Qu.: 352.0 1st Qu.:118.0 ## Overt :33 Median : 97 Median : 403.0 Median :156.0 ## Mean :122 Mean : 540.8 Mean :186.1 ## 3rd Qu.:112 3rd Qu.: 558.0 3rd Qu.:221.0 ## Max. :353 Max. :1568.0 Max. :748.0
期望最大化(EM)
期望最大化(EM)算法是用于找到最大似然的或在统计模型参数,其中该模型依赖于未观察到的潜变量最大后验(MAP)估计的迭代方法。期望最大化(EM)可能是无监督学习最常用的算法。
似然函数
似然函数找到给定数据的最佳模型。
期望最大化(EM)算法
假设我们翻转硬币并得到以下内容 - 0,1,1,0,0,1,1,0,0,1。我们可以选择伯努利分布
或者,如果我们有以厘米为单位的人的身高(男性和女性)的数据。高度遵循正常的分布,但男性(平均)比女性高,因此这表明两个高斯分布的混合模型。
贝叶斯信息准则(BIC)
以糖尿病数据为例
EM集群与糖尿病数据使用mclust。 log.likelihood:这是BIC值的对数似然值 n:这是X点的数量 df:这是自由度 BIC:这是贝叶斯信息标准; 低是好的 ICL:综合完整X可能性 - BIC的分类版本。 clPairs(X,class.d)
EM的绘图命令会生成以下四个绘图:
BIC值用于选择簇的数量
聚类图
分类不确定性的图表
簇的轨道图