GMM高斯混合模型学习笔记(EM算法求解)
提出混合模型主要是为了能更好地近似一些较复杂的样本分布,通过不断添加component个数,能够随意地逼近不论什么连续的概率分布。所以我们觉得不论什么样本分布都能够用混合模型来建模。由于高斯函数具有一些非常有用的性质。所以高斯混合模型被广泛地使用。
GMM与kmeans相似,也是属于clustering,不同的是。kmeans是把每一个样本点聚到当中一个cluster,而GMM是给出这些样本点到每一个cluster的概率。每一个component就是一个聚类中心。
GMM(Gaussian Mixture Model)高斯混合模型,由K个不同的Gaussian线性组合而成,每一个Gaussian是混合模型的一个component,GMM的概率密度函数例如以下:
依据上式。从GMM中生成一个样本点x分两步:
1,从K个component中随机的选择一个
2。从该component中选择一个点
參数说明:N个样本点。K个component,μk,∑k 是第k个component的均值和协方差矩阵,是模型參数,是须要预计的。
πk是mixing coefficient,表示第k个component被选中的概率。πk=1N∑Nn=1znk,也是模型參数。须要预计。N是高斯(正态)分布。
对一个样本集建立高斯混合模型的过程,就是依据已知样本集X反推高斯混合模型的參数(μ,∑,π),这是一个參数预计问题。首先想到用最大似然的方法求解,也就是,要确定參数π,μ,∑使得它所确定的概率分布生成这些样本点的概率最大。这个概率也就是似然函数,例如以下:
而一般对于单个样本点其概率较小。多个相乘后更小,easy造成浮点数下溢,所以通常是对似然函数求log,变成加和形式:
这个叫做log似然函数,目标是要最大化它。用log似然函数对參数分别求偏导。令偏导等于0,可求解得參数。
然而。GMM的log似然函数是例如以下形式:
能够看到对数中有求和,直接求导求解将导致一系列复杂的运算,故考虑使用EM算法。(详细思路见上一篇:EM算法学习笔记)
考虑GMM生成一个样本点的过程,这里对每一个xi引入隐变量z,z是一个K维向量,如果生成xi时选择了第k个component,则zk=1,其它元素都为0。∑Kk=1zk=1.
如果z是已知的。则样本集变成了{X,Z},要求解的似然函数变成了:
log似然函数为:
能够看到,这次ln直接对Gaussian作用,求和在ln外面,所以能够直接求最大似然解了。
1,初始化一组模型參数π,μ,∑
2,E-step
然而。其实z是不知道的。我们仅仅是如果z已知。
而z的值是通过后验概率观測。所以这里考虑用z值的期望在上述似然函数中取代z。
对于一个样本点x:
后验概率(固定μ,∑,π):
由于{zn}之间是相互独立的。
计算z期望γ(znk)(z向量仅仅有一个值取1,其余为0):
将z值用期望取代。则待求解的log似然函数(*)式变为:
3,M-step
如今能够最大化似然函数求解參数了,首先对μ求偏导,令偏导等于0。可得:
Nk 是“the effective number of points assigned to cluster k”.
再对∑k求偏导,令偏导等于0,可得:
接下来还需求解π。注意到π需满足∑Kk=1πk=1。所以这是一个带等式约束的最大值问题。使用拉格朗日乘数法。
构造拉格朗日函数:
对π求导,令导数为0:
两边同乘πk得:
两边对k求和:
可得:λ=−N
代入可得:πk=NkN.
4,检查是否收敛
反复E-step和M-step两步。直到收敛,就可以求得一个局部最优解。
GMM的建模步骤例如以下图(k=2,高斯分布是蓝色和红色圈):
主要參考资料:
《Pattern Recognization and Machine Learning》
帮助理解:
http://blog.pluskid.org/?p=39
转载于:https://www.cnblogs.com/mfrbuaa/p/5111355.html
GMM高斯混合模型学习笔记(EM算法求解)相关推荐
- 高斯混合模型学习笔记
高斯混合模型学习笔记 根据师兄(王延凯的博客)以及其他博主大佬的总结学习高斯混合模型,自己也作一下学习记录. 目录 高斯混合模型学习笔记 1.模型介绍 2.模型求解步骤 举个栗子 通用背景模型UBM[ ...
- 【统计学习方法】学习笔记——EM算法及其推广
统计学习方法学习笔记--EM算法及其推广 1. EM算法的引入 1.1 EM算法 1.2 EM算法的导出 1.3 EM算法在非监督学习中的应用 2. EM算法的收敛性 3. EM算法在高斯混合模型学习 ...
- 高斯混合模型参数估计的EM算法
一.高斯模型简介 首先介绍一下单高斯模型(GSM)和高斯混合模型(GMM)的大概思想. 1.单高斯模型 如题,就是单个高斯分布模型or正态分布模型.想必大家都知道正态分布,这一分布反映了自然界普遍存在 ...
- GMM高斯混合模型聚类的EM估计过程matlab仿真
目录 1.算法概述 2.仿真效果 3.MATLAB源码 1.算法概述 高斯混合模型(Gaussian Mixed Model)指的是多个高斯分布函数的线性组合,理论上GMM可以拟合出任意类型的分布,通 ...
- EM算法在高斯混合模型学习中的应用
本篇文章是之前期望极大算法(EM算法)文章的后续,有需要可以先看看那篇文章关于EM算法的推导. 高斯混合模型 高斯混合模型是研究算法的人避不开的一个东西,其在非深度学习的远古时代经常被用到,比如图像处 ...
- GMM 模型与EM算法求解详细推导
1. 高斯模型与高维高斯模型介绍 高斯模型也就是正态分布模型,该模型最早可见于我们的高中数学教材中.闻其名知其意,正态分布是自然界中普遍存在的一种分布.比如,考试成绩,人的智力水平等等.都是大致呈现为 ...
- 王小草【机器学习】笔记--EM算法
原文地址:http://blog.csdn.net/sinat_33761963/article/details/53520898 EM算法的英文全称是Expectation Maximization ...
- K-Means(K均值)、GMM(高斯混合模型),通俗易懂,先收藏了!
文章目录 1. 聚类算法都是无监督学习吗? 2. k-means(k均值)算法 2.1 算法过程 2.2 损失函数 2.3 k值的选择 2.4 KNN与K-means区别? 2.5 K-Means优缺 ...
- EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联 ...
最新文章
- 12 Java面向对象之多态
- 第9部分 备份与灾难恢复
- 【[AHOI2013]差异】
- flink配置+停止flink中的job
- java中包命名常见规则
- 【UOJ549】序列妙妙值【异或】【根号分治】
- 众多Android 开源项目再次推荐,学习不可错过
- 数据挖掘之数理统计与常见分布与假设检验
- [leetcode]209. 长度最小的子数组
- 获得Oracle中刚插入的数据的ID(for produce)
- ModbusTCP助手调试工具Modbus主站调试工具ModbusMaster支持所有Modbus设备调试
- 直线分割平面的公式_几种分割平面问题 | 学步园
- C++关键字(static/register/atuo/extern/volatile/const/inline/define/typedef)
- 微信小程序授权登陆源码
- 15个令iPhone用户嫉妒的Android widgets 桌面组件
- 张铁林的十年英国留学生涯
- houseoforange_hitcon_2016(unsortbin attack,fsop)
- 七彩虹 pci内存控制器 感叹号 蓝屏 DPC_WATCHDOG_VIOLATION
- 关于Go语言的发展前景
- 金融机构的反洗钱(AML)合规工作和系统建设