ML—高斯混合模型

华电北风吹

日期:2016-05-07

高斯混合模型是一个无监督学习算法,主要用思路是利用EM算法对混合高斯分布进行极大似然估计。

一、高斯混合分布

对于有k个高斯分布混合而成的混合高斯分布的概率密度函数有

p(x)=∑zp(x|z)p(z)(1)

对于随机变量z有z~Multinomial(?), 表示来自于不同的高斯分布的概率分别为?j,j=1,2,...,k,即p(z=j)=?j,其中?j≥0,∑kj=1?j=1。对于每个高斯分布有x|z~N(μj,Σj)。称满足以上分布的随机变量x服从高斯混合分布。

二、混合高斯模型

对于取样于混合高斯分布的m个随机取样样本X={x(1),x(2),...,x(m)},混合高斯模型的目标是利用EM算法求解混合高斯分布的模型参数?,μ,Σ。

对于取样样本的极大似然函数为

L(?,μ,Σ)=∏mi=1p(x(i);?,μ,Σ)=∏mi=1∑z(j)p(x(i)|z(j);μ,Σ)p(z(j);?)(2-1)

写成对数似然函数为

l(?,μ,Σ)=∑mi=1log∑z(j)p(x(i)|z(j);μ,Σ)p(z(j);?)(2-2)

直接对式(2-2)求导,按照普通的极大似然估计是不可解的。EM算法参考了kmeans算法的迭代思路可以很好的求解式(2-2)。

EM算法的过程如下

———————————————————————————-

Algorithm MixGM

给定初值?0,μ0,Σ0

Repeat until convergence

   E?step: For each i,j set

       w(i)j:=p(z(i)=j|x(i);?,μ,Σ)

   M?step: Update the parameters

       ?j:=1m∑mi=1w(i)j

       μj:=∑mi=1w(i)jx(i)∑mi=1w(i)j

       Σj:=∑mi=1w(i)j(x(i)?μj)(x(i)?μj)T∑mi=1w(i)j

———————————————————————————-

在Algorithm MixGM中,E?step其实是根据贝叶斯公式对每个样本求解它在当前参数下来自于各个高斯分布的后验概率,求解方式如下

p(z(i)=j|x(i);μ,Σ)=p(x(i)|z(i)=j;?,μ,Σ)p(z(i)=j;?)∑kl=1p(x(i)|z(i)=l;?,μ,Σ)p(z(i)=l;?)(2-3)

对于公式(2-2)中,若知道了隐含变量z的分布,公式就是可以用极大似然估计求解的。在Algorithm MixGM中,M?step就是据此利用极大似然估计对模型参数?,μ,Σ进行更新。

时间: 2025-01-18 02:25:23

ML—高斯混合模型的相关文章

EM算法原理以及高斯混合模型实践

EM算法有很多的应用: 最广泛的就是GMM混合高斯模型.聚类.HMM等等. The EM Algorithm 高斯混合模型(Mixtures of Gaussians)和EM算法 EM算法 求最大似然函数估计值的一般步骤: (1)写出似然函数: (2)对似然函数取对数,并整理: (3)求导数,令导数为0,得到似然方程: (4)解似然方程,得到的参数即为所求. 期望最大化算法(EM算法): 优点: 1. 简单稳定: 2. 通过E步骤和M步骤使得期望最大化,是自收敛的分类算法,既不需要事先设定类别也

EM算法求高斯混合模型参数估计——Python实现

EM算法一般表述: 当有部分数据缺失或者无法观察到时,EM算法提供了一个高效的迭代程序用来计算这些数据的最大似然估计.在每一步迭代分为两个步骤:期望(Expectation)步骤和最大化(Maximization)步骤,因此称为EM算法. 假设全部数据Z是由可观测到的样本X={X1, X2,--, Xn}和不可观测到的样本Z={Z1, Z2,--, Zn}组成的,则Y = X∪Z.EM算法通过搜寻使全部数据的似然函数Log(L(Z; h))的期望值最大来寻找极大似然估计,注意此处的h不是一个变量

带你理解带你飞——高斯混合模型算法

GMM这是图像处理,模式识别和深度学习领域一个百嚼不烂的话题.很多人被一堆数学公式,迭代求和和看似毫无联系的likehood EM算法搞得糊里糊涂. 其实就算羡慕着很多牛气哄哄的学霸炫耀公式推理的IT普工们,我们有没有问过自己,我们真的知道GMM吗?于是有些人和我一样有了如下的思考和疑问: 1.到底什么是高斯混合模型?最好能一句话或者简单的话说明白,至少让我一辈子也忘不掉这个该死的算法... 2.GMM是如此复杂有效,能让GMM算法向富士康的iphone流水线一样,虽然精密庞杂但却能完整直观的展

高斯混合模型与EM算法

对于高斯混合模型是干什么的呢?它解决什么样的问题呢?它常用在非监督学习中,意思就是我们的训练样本集合只有数据,没有标签. 它用来解决这样的问题:我们有一堆的训练样本,这些样本可以一共分为K类,用z(i)表示.,但是具体样本属于哪类我们并不知道,现在我们需要建立一个模型来描述这个训练样本的分布.这时, 我们就可以用高斯混合模型来进行描述. 怎么入手呢? 高斯混合模型: 我们这么想,因为样本集合潜在地是可以分为K类的,用z(i)表示第 i 样本所属的类别,所以z(i) 的范围为从1至 K.对于我们可

高斯混合模型(GMM)

复习: 1.概率密度函数,密度函数,概率分布函数和累计分布函数 概率密度函数一般以大写“PDF”(Probability Density Function),也称概率分布函数,有的时候又简称概率分布函数. 而累计分布函数是概率分布函数的积分. 注意区分 从数学上看,累计分布函数F(x)=P(X<x),表示随机变量X的值小于x的概率.这个意义很容易理解. 概率密度f(x)是F(x)在x处的关于x的一阶导数,即变化率.如果在某一x附近取非常小的一个邻域Δx,那么,随机变量X落在(x, x+Δx)内的

Stanford机器学习课程笔记4-Kmeans与高斯混合模型

这一部分属于无监督学习的内容,无监督学习内容主要包括:Kmeans聚类算法.高斯混合模型及EM算法.Factor Analysis.PCA.ICA等.本文是Kmeans聚类算法.高斯混合模型的笔记,EM算法是适用于存在latent/hidden变量的通用算法,高斯混合模型仅仅是EM算法的一种特殊情况,关于EM算法的推到参见Andrew Ng讲义.由于公式太多,最近时间又忙实习的事就简单写一些,回头看时还得参考Ng的笔记和自己的打印Notes上的笔记,这里的程序对理解可能能提供另外的一些帮助. K

又看了一次EM 算法,还有高斯混合模型,最大似然估计

先列明材料: 高斯混合模型的推导计算(英文版): http://www.seanborman.com/publications/EM_algorithm.pdf 这位翻译写成中文版: http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006936.html 高斯混合模型的流程: http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006924.html 最大似然估计: http://bl

paper 62:高斯混合模型(GMM)参数优化及实现

高斯混合模型(GMM)参数优化及实现 (< xmlnamespace prefix ="st1" ns ="urn:schemas-microsoft-com:office:smarttags" />2010-11-13) 1 高斯混合模型概述< xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" /> 高斯密度函

机器学习(十二、十三):K-means算法、高斯混合模型

简介: 本节介绍STANFORD机器学习公开课中的第12.13集视频中的算法:K-means算法.高斯混合模型(GMM).(9.10.11集不进行介绍,略过了哈) 一.K-means算法 属于无监督学习的聚类算法,给定一组未标定的数据(输入样本),对其进行分类,假设可分为k个类.由于算法比较直观,故直接给出步骤和MATLAB代码.(k-means算法在数学推导上是有意义的) MATLAB代码: %% %k均值聚类 clear all; close all; %% n=2; m=200; v0=r