关闭

机器学习 混合高斯模型再述

标签: 优化机器学习算法计算机视觉迭代
1030人阅读 评论(0) 收藏 举报
分类:

下面介绍一下几种典型的机器算法

首先第一种是高斯混合模型算法:

高斯模型有单高斯模型(SGM)和混合高斯模型(GMM)两种。

(1)单高斯模型:

为简单起见,阈值t的选取一般靠经验值来设定。通常意义下,我们一般取t=0.7-0.75之间。

二维情况如下所示:

(2)混合高斯模型:

 

      对于(b)图所示的情况,很明显,单高斯模型是无法解决的。为了解决这个问题,人们提出了高斯混合模型(GMM),顾名思义,就是数据可以看作是从数个高斯分布中生成出来的。虽然我们可以用不同的分布来随意地构造 XX Mixture Model ,但是 GMM是 最为流行。另外,Mixture Model 本身其实也是可以变得任意复杂的,通过增加 Model 的个数,我们可以任意地逼近任何连续的概率密分布。

    每个 GMM 由 K 个 Gaussian 分布组成,每个 Gaussian 称为一个“Component”,这些 Component 线性加成在一起就组成了 GMM 的概率密度函数:

 

                (1)

其中,πk表示选中这个component部分的概率,我们也称其为加权系数。

根据上面的式子,如果我们要从 GMM 的分布中随机地取一个点的话,实际上可以分为两步:

(1)首先随机地在这 K 个 Component 之中选一个,每个 Component 被选中的概率实际上就是它的系数 πk,选中了 Component 之后,再单独地考虑从这个 Component 的分布中选取一个点就可以了──这里已经回到了普通的 Gaussian 分布,转化为了已知的问题。假设现在有 N 个数据点,我们认为这些数据点由某个GMM模型产生,现在我们要需要确定 πk,μk,σk 这些参数。很自然的,我们想到利用最大似然估计来确定这些参数,GMM的似然函数如下:

        (2)

 

在最大似然估计里面,由于我们的目的是把乘积的形式分解为求和的形式,即在等式的左右两边加上一个log函数,但是由上文博客里的(2)式可以看出,转化为log后,还有log(a+b)的形式,因此,要进一步求解。

我们采用EM算法,分布迭代求解最大值:

EM算法的步骤这里不作详细的介绍,可以参见博客:

http://blog.pluskid.org/?p=39

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:101161次
    • 积分:1661
    • 等级:
    • 排名:千里之外
    • 原创:48篇
    • 转载:110篇
    • 译文:0篇
    • 评论:13条
    文章分类
    最新评论