目录
二、KMeans Algorithm(简单易懂版)- 硬聚类
四、Latent Variable Models(潜变量模型)
五、Expectation-Maximization(EM)
六、Gaussian Mixture Models(GMM)
K-Means算法的特点是类别的个数是人为给定的,如果让机器自己去找类别的个数,通过一次次重复这样的选择质心-计算距离后分类-再次选择新质心的流程,直到我们分组之后所有的数据都不会再变化了,也就得到了最终的聚合结果。
假设我想聚3类,那我们随机选取【电影1、电影6、电影9】这3个电影作为质心(初始大佬)

计算除质心(大佬)外的样本(小弟)的欧式距离,样本(小弟)离哪个质心(大佬)近,该样本就跟哪个质心(大佬)

从上图可以看出:
电影2、电影3(小弟)离电影1(大佬)更近,所以他们3个暂时为A类
电影4、电影5、电影10(小弟)离电影6(大佬)更近,所以他们4个暂时为B类
电影7、电影8(小弟)离电影9(大佬)更近,所以他们3个暂时为C类
上面我们已经分为三类了,我们需要从三类中重新选出大佬(质心)。
A将电影2、电影3和电影1的平均值做A类的大佬,则A类新大佬(质心)为:
电影搞笑镜头电影搞笑镜头电影搞笑尽头=(电影1搞笑镜头+电影2搞笑镜头+电影3搞笑尽头3,
电影亲吻镜头电影亲吻镜头电影亲吻尽头,电影1亲吻镜头+电影2亲吻镜头+电影3亲吻尽头3,
电影打斗镜头电影打斗镜头电影打斗尽头电影1打斗镜头+电影2打斗镜头+电影3打斗尽头3)
=(100,20,20)
同理也可以计算出B类新大佬(质心)为(17.5,98.75,17.5),C类新大佬(20,20,100)
同样用上面方法计算样本到质心(新大佬)的欧式距离,得

从上图可以看出:
电影1、电影2、电影3(小弟)离A类(新大佬)更近,他们归为一类
电影6、电影4、电影5、电影10(小弟)离B类(新大佬)更近,他们也归为一类
电影9、电影7、电影8(小弟)离C类(新大佬)更近,他们也归为一类
经过这次计算我们发现聚类情况并没有变化,这就说明我们的计算收敛已经结束了,不需要继续进行分组了,最终数据成功按照相似性分成了三组。即电影1,2,3为一类电影4,5,6,10为一类,电影7,8,9为一类,完成聚类。
,其中
k
= 1
, . . . , K
,且
µ
k是与第k个聚类关联 的⼀个代表。正如我们将看到的那样,我们可以认为
表⽰了聚类的中⼼。我们的⽬标是找到 数据点分别属于的聚类,以及⼀组向量{
},使得每个数据点和与它最近的向量
之间的距离的平⽅和最⼩。
,我 们引⼊⼀组对应的
⼆值指⽰变量
∈ {0, 1}
,其中
k
= 1
, . . . , K表⽰数据点
属于K
个聚类中
的哪⼀个,
从⽽如果数据点xn被分配到类别k,那么
= 1
,
且对于j ≠ k,有
= 0
。这被
称为“
1-of-K
”表⽰⽅式。之后我们可以定义⼀个⽬标函数,有时被称为
失真度量(distortion measure
),形式为:

之 间 的 距 离 的 平 ⽅ 和。 我 们 的 ⽬ 标 是 找
}
和
{
}
的值,使得
J
达到最⼩值。我们可以⽤⼀种迭代的⽅法完成这件事,其中每次迭
的最优化和
的最优化。
的最优化和
的最优化(包含公式推导)(1)步骤
选择⼀些初 始值。
最⼩化J,保持
固定。(E)
最⼩ 化J,保持
固定。(M)
和更新
的两个阶段分别对应于EM算法中的E(期望)步骤和M(最⼤化)步骤
。为了强调这⼀点,我们会 在K
均值算法中使⽤
E
步骤和
M
步骤的说法。
。上述给出的
J
是
的⼀个线性函数,因此最优化过程可以很 容易地进⾏,得到⼀个解析解。与不同的n
相关的项是独⽴的,因此我们可以对每个
n
分别进⾏ 最优化,
只要k的值使
最⼩,我们就令
等于1
。换句话说,我们可以简单地将数据点的聚类设置为最近的聚类中⼼。更形式化地,这可以表达为:


现在考虑
固定时,关于
的最优化。⽬标函数J是
的⼀个⼆次函数,令它关于
的导
等于 类别k的所有数据点的均值
。因此,上述步骤被称为
K
均值(
K
-
means
)算法。
(4)KMeans中执行EM算法的例子
进行四轮EM后数据收敛:
潜变量模型就是一种复杂的概率模型。简单的说,如果概率模型 p(x;θ) 对随机变量 x 的分布建模,且具有(离散变量和连续变量形式):

的形式,这样的模型就被称为潜变量模型,其中 z 称为潜变量, x 称为观测变量。当 z 为离散型随机变量时,称为离散型潜变量模型,当 z 为连续型随机变量时,模型称为连续型潜变量模型。对于随机向量 X 和 Z 的情况,道理相同。
也就是说,潜变量模型是通过对某个联合分布进行边缘化得到的一个概率模型。被边缘化的随机变量(或向量)就是潜变量。因此,潜变量模型是一种基于简单的分布形式构建复杂的分布形式的方法,具有更高的复杂度,表示能力更强。但它的极大似然估计更为困难,因为函数形式中包含求和或积分操作。
假设潜变量模型一个简单随机样本为 X={x1,⋯,xN} ,则其对数似然函数为(离散变量和连续变量形式)

其中的求和或积分运算阻止了对数函数直接作用在联合分布 p(xn,z;θ)=p(z;θ)p(xn|z;θ) 之上,通常 p(z;θ) 和 p(xn|z;θ) 都是简单的分布形式。那么就无法通过求导得到极大似然估计的闭式解。
潜变量模型的一个著名的例子是高斯混合模型(Gaussian mixture model, GMM),它的函数形式如下:

EM算法最初作为一种处理含缺失值的情况下求概率模型极大似解的方法,在潜变量模型的极大似然估计问题上得到广泛的应用,因为潜变量模型中的潜变量(未观测变量)可被认为是一种缺失数据。假设除了观测样本X={x1,⋯,xN} 之外,还拥有潜变量 z 的数据 Z={z1,⋯,zN} ,二者合在一起称为完整数据(complete data);观测变量的数据 X 自身被称为非完整数据(incomplete data)。如果拥有完整数据,则完整数据对数似然函数为

因为 z 和 x 通常具有简单的分布形式(属于指数家族),显然通过求导可得到模型参数 θ 的闭式解。然而通常并没有潜变量 z 的数据,只有非完整数据 X 。
EM算法是一种迭代算法,它的基本思想是,在当前参数的估计值
之下,通过极大化完整数据对数似然函数在潜变量 z 的后验分布下的期望来更新参数,求出
。
.
下的后验分布 p(Z|X;
) ,并求完整数据对数似然函数的期望
) 更新 :
其中,对于离散型潜变量模型来说,完整数据对数似然函数的期望为

对于连续型型潜变量模型来说,完整数据对数似然函数的期望为

EM算法通过迭代地最大化完整数据对数似然函数的期望使问题简化,因为完整数据对数似然函数是容易求解的,只要 p(z;θ) 和 p(x|z;θ) 具有简单分布形式。
其中参数{
}必须满⾜:




看成
= 1
的先验概率,将
看成观测到
x之后,对应的后验概率。正如我们将看
也可以
被看做分量k对于“解释”观测值x的“责任”(responsibility)。
(1)对于非完整数据(incomplete data)而言,我们有如下公式:(课件里重点讲的, 下面的3、4也只是针对数据 X 自身)
(2) 对于完整数据(complete data)而言,我们有如下公式:

对上面的似然函数求导:



从⽽第k个分量的混合系数为那个分量对于解释数据点的“责任”的平均值。


