高斯混合模型

引言

前面我们介绍了EM算法,EM算法是对含有隐变量的参数估计的一种有效的迭代算法,EM算法的一个最重要的应用就是高斯混合模型的参数估计。高斯混合模型也是机器学习中一个极其重要的模型,可被用于估计数据的分布。

高斯混合模型

高斯混合模型是指具有下面概率分布的模型:

其中是系数,, 为高斯分布,.

其中

高斯混合模型告诉我们样本点是怎么生成的,即由k个高斯分布的值的和生成的。

EM算法进行参数估计

假设观测数据是由高斯混合模型生成的,那么要估计的参数为

如果要用EM算法的话,那么首先就要先明确隐变量是什么。在这个模型里面是没有隐变量的,因此我们需要对模型进行一定的解释与变换。

假设样本 是依概率选择第k个高斯分布产生的,那么样本是由那个高斯分布产生的我们是未知的,因此隐变量可以定义如下:

到目前未知我们有了观测数据 ,隐变量,就可以利用EM算法来进行参数估计了。

首先需要写出完全数据的概率分布:

完全数据为

则完全数据的概率分布为

其中

完全数据的对数似然函数为:

确定Q函数:

现在问题需要求取,可知:

以及,则Q函数可以写为:

最大化Q函数,有:

对Q函数求偏导,可以得到参数的估计值:

高斯混合模型算法

有了上面的计算公式,就可以很轻易的得到混合高斯模型的参数估计算法了。

输入初始值

计算

更新参数

迭代直到问题收敛

高斯混合聚类

高斯混合模型的一个重要应用就是高斯混合聚类。高斯混合聚类的原理就是假设样本是由高斯混合分布产生,每个单独的样本都是由高斯混合分布中的某一个高斯分布产生,因此可以根据其具体生成的高斯函数将样本聚类为K个簇。

给定初始参数以及样本利用上面的高斯混合模型估计高斯混合模型的参数。

针对每一个样本,利用公式将样本聚类到相应的簇。

显示 Gitment 评论