机器学习 : 高斯混合模型及EM算法
Mixtures of Gaussian
这一讲,我们讨论利用EM (Expectation-Maximization)做概率密度的估计。假设我们有一组训练样本x(1),x(2),...x(m),因为是unsupervised的学习问题,所以我们没有任何y的信息。
我们希望利用一个联合分布p(x(i),z(i))=p(x(i)|z(i))p(z(i))来拟合这些数据, 其中z(i)∼Multinomial(ϕ) (ϕj⩾0, ∑kj=1ϕj=1,参数ϕj给出了概率p(z(i)=j)),并且 x(i)|z(i)=j∼N(μj,Σj),我们让k表示z(i)可能值的个数,因此在这个模型中,每一个训练样本x(i)是由随机取某一个值的变量z(i)生成的,所以x(i)是从k个的高斯分布中的一个(由z(i)指示)提取出来的。这个称为高斯混合模型,我们也要注意到z(i)是隐含的随机变量,高斯混合模型涉及的参数是ϕ,μ,Σ,为了估计这些变量,我们可以建立如下的表达式:
我们发现,通过求偏导数求极值的方法,无法得到这些参数的解,从上面的表达式可以看出,随机变量z(i)告诉了我们x(i)是从k个高斯分布中的其中一个生成的,如果我们知道是哪一个高斯分布,或者说如果知道z(i)的值,那我们可以利用最大似然估计的方法估计参数
ϕ,μ,Σ,如果z(i)已知,那么上式可以写成:
利用最大似然估计,可以求得这些参数为:
从上面的表达式可以看出,如果z(i)的值已知,那么参数ϕ,μ,Σ的估计与之前介绍的Gaussian discriminant analysis 模型对参数的估计是一样的,这里的z(i)就像Gaussian discriminant analysis 模型中的输出y一样。
但是遗憾的是,我们不知道z(i)的值,所以这里我们要介绍另外一种unsupervised的学习方法,称为EM算法,EM算法主要分为两步,在E-step,我们主要对z(i)的值做猜测,在M-step,我们在E-step假设的基础上,利用最大似然估计求参数ϕ,μ,Σ,算法主要流程如下:
Repeat until convergence {
E-step: 对于每一个i,j,设置:
M-step: 跟新如下参数:
}
在E-step,我们可以通过给定的x(i)和当前估计的参数计算z(i)的后验概率,利用贝叶斯估计,我们可以得到:
这里,p(x(i)|z(i)=j;μ,Σ)通过计算一个均值为μj,协方差为Σj的高斯分布在x(i)处的概率密度得到,p(z(i)=j,ϕ)
是由ϕj给出,在E-step计算的w(i)j的值,表示我们对z(i)的一种弱估计。
同样,我们也可以将M-step的参数跟新与知道z(i)确切值的参数估计的表达式进行对比,可以看出两者是一致的,只不过前面的表达式1{z(i)=j}指出了我们利用哪个高斯分布,而现在换成了w(i)j。
EM 算法同样会让人联想起k均值算法,k均值是硬聚类,将样本聚到某一类里,而EM算法是弱聚类,样本所属的高斯分布由w(i)j估计。
参考来源:
Andrew Ng, “Machine Learning”, Stanford University.
机器学习 : 高斯混合模型及EM算法的更多相关文章
- 高斯混合模型的EM算法
高斯混合模型的EM算法 混合高斯模型 高斯混合模型的概率分布可以写成多个高斯分布的线形叠加,即 \[ p(\mathbf x) = \sum_{k=1}^{K}\pi_k\mathcal N(\mat ...
- SIGAI机器学习第二十三集 高斯混合模型与EM算法
讲授高斯混合模型的基本概念,训练算法面临的问题,EM算法的核心思想,算法的实现,实际应用. 大纲: 高斯混合模型简介实际例子训练算法面临的困难EM算法应用-视频背景建模总结 高斯混合模型简写GMM,期 ...
- 机器学习基础知识笔记(一)-- 极大似然估计、高斯混合模型与EM算法
似然函数 常说的概率是指给定参数后,预测即将发生的事件的可能性.拿硬币这个例子来说,我们已知一枚均匀硬币的正反面概率分别是0.5,要预测抛两次硬币,硬币都朝上的概率: H代表Head,表示头朝上 p( ...
- 机器学习之高斯混合模型及EM算法
第一部分: 这篇讨论使用期望最大化算法(Expectation-Maximization)来进行密度估计(density estimation). 与k-means一样,给定的训练样本是,我们将隐含类 ...
- 高斯混合模型与EM算法
对于高斯混合模型是干什么的呢?它解决什么样的问题呢?它常用在非监督学习中,意思就是我们的训练样本集合只有数据,没有标签. 它用来解决这样的问题:我们有一堆的训练样本,这些样本可以一共分为K类,用z(i ...
- 聚类之高斯混合模型与EM算法
一.高斯混合模型概述 1.公式 高斯混合模型是指具有如下形式的概率分布模型: 其中,αk≥0,且∑αk=1,是每一个高斯分布的权重.Ø(y|θk)是第k个高斯分布的概率密度,被称为第k个分模型,参数为 ...
- 高斯混合和EM算法
首先介绍高斯混合模型: 高斯混合模型是指具有以下形式的概率分布模型: 一般其他分布的混合模型用相应的概率密度代替(1)式中的高斯分布密度即可. 给定训练集,我们希望构建该数据联合分布 这里,其中是概率 ...
- 机器学习笔记—混合高斯和 EM 算法
本文介绍密度估计的 EM(Expectation-Maximization,期望最大). 假设有 {x(1),...,x(m)},因为是无监督学习算法,所以没有 y(i). 我们通过指定联合分布 p( ...
- 【机器学习】GMM和EM算法
机器学习算法-GMM和EM算法 目录 机器学习算法-GMM和EM算法 1. GMM模型 2. GMM模型参数求解 2.1 参数的求解 2.2 参数和的求解 3. GMM算法的实现 3.1 gmm类的定 ...
随机推荐
- leetcode 题解 || Remove Nth Node From End of List 问题
problem: Given a linked list, remove the nth node from the end of list and return its head. For exam ...
- jsp中获取spring 管理的bean(通过config)
WebApplicationContext wac = (WebApplicationContext)config.getServletContext().getAttribute(WebApplic ...
- 修改Qweb报表
Table of Contents 将报表的类型改为HTML 打印HTML格式报表 使用html editor 修改报表模板 使用Web builder修改报表 恢复报表格式 将报表的 ...
- nginx使用指南
1.执行nginx 能够执行nginx命令开启nginx: nginx 假设nginx已经开启了,能够执行nginx命令加-s 參数来控制nginx的执行 nginx -s signal signal ...
- 认识Gulp
gulp详细入门教程:http://www.ydcss.com/archives/18 安装gulp 前提:已经安装node.js.npm $ npm install gulp --save-dev ...
- THE MARTIAN
影片的最后一段自白 When I was up there, stranded by myself …… “did I think I was going to die?” Yes, absolute ...
- UVA 11888 - Abnormal 89's(Manachar)
UVA 11888 - Abnormal 89's option=com_onlinejudge&Itemid=8&page=show_problem&category=524 ...
- 【BZOJ4950】lydsy七月月赛 C 二分图最大匹配
[BZOJ4950]lydsy七月月赛 C 题面 题解:比较直接的想法就是:每行,每列的最大值都留下,剩下的格子都变成1.但是如果一个格子既是行的最大值又是列的最大值,那么我们只需要把它留下即可.这就 ...
- eclipse调试第三方jar包需要源码的问题
很多时候测试自己的jar包功能时,需要有一个测试工程导入该jar包,但是一般在调试的时候,需要跟进去看看步骤和逻辑是否正确,这个时候就需要在jar包的源码中下断点.最近刚好自己也会经常这样做,也遇到了 ...
- java的多生产者多消费者例子
import java.util.concurrent.locks.*; public class Test9 { public static void main(String[] args) { / ...