混合高斯模型及其求解方法

来源:互联网 发布:大型体育赛事数据服务 编辑:程序博客网 时间:2024/06/05 01:00

      高斯分布是机器学习领域中一个重要的概率分布模型,高斯模型分为单高斯模型和混合高斯模型,其中,混合高斯分布能更好地刻画历史数据集中的数据分布,因此,本文将详细叙述混合高斯模型的理论及其模型求解方法。

      首先,先介绍单高斯模型。多维高斯分布的概率密度函数定义如下:

                          (1)                  

其中,维的样本空间,是样本集的期望,是方差。由于单高斯模型可以明确训练样本是否属于该高斯模型,因此通常由训练样本的均值代替,由样本方差代替。为了高斯分布用于模型分类,式(1)可以改为:

                                                        (2)                                                   

式(2)表明样本属于类别C的概率大小。从而,将任意测试样本输入式(2),均可以得到一个标量,然后,根据一个阈值t来确定该样本是否属于该类别,根据经验,阈值t一般取0.7~0.75之间。

      针对复杂数据集而言,一个单高斯模型往往不能完整地描述其数据的分布情况,因此需要用多个高斯模型来逼近数据的分布,即,使用混合高斯模型(GMM, Gaussian Mixture Model)来逼近。

      在GMM中,对于给定的训练集样本,其隐含类别标签用表示。假设满足多项式分布,其中,且和为1,而且在给定后,假定满足多值高斯分布,则可以得到的联合概率密度,如式(3)所示

                           (3)                                       

      GMM模型中有3个需要求解的变量,分别为。则参数的求解可以采用极大似然估计的思想,根据以上描述,可以得到似然函数,由于概率值一般都很小,当m很小的时候,连乘的结果非常小,容易造成浮点数下溢,所以我们通常取log,如式(4)所示:

                                                                      (4)                                            

      将式(3)代入(4)中,得到:

(5)

      在做参数估计的时候,一般是通过对待求变量进行求导来求极值的,但是,上式中,log中又有求和,故如果采取求导的方式求极值,将会十分复杂,且没有闭合解。因此,可以采用EM算法来估计各个参数,EM算法的求解分为两步:第一步,假设知道各个高斯模型的参数(可以初始化,或基于上一步迭代结果),然后去估计每个高斯模型的权值;第二步,基于估计的权值,再去迭代高斯模型的参数,重复这两步,直到收敛为止。EM具体表达如下:

            1.(E step)

                  对于第i个样本来说,它由第s个model生成的概率为:

                6

            2. (M step)

                    在得到每个点的后,由于对于样本来说,它的的值是由第s个高斯模型产生的。因此,在估计第s个高斯模型的参数                       时,我们就用这些数据去做参数估计,将采用极大似然的方法去估计:

        用表示求解的参数,那么对于历史日志中的每条记录,其总体概率分布可以看做由k个加权的高斯函数的线性组合构成,如下:

                     7

其中,是对象在第i个子类的高斯分布概率。

原创粉丝点击