文章目录

  • MoG:高斯混合模型.
    • Recap:监督学习情境.
    • 无监督学习情境.
  • EM in MoG.

MoG:高斯混合模型.

  • 考虑这样一个问题,给定一组无标签数据集 {x(1),x(2),..,x(m)}\{x^{(1)},x^{(2)},..,x^{(m)}\}{x(1),x(2),..,x(m)},我们希望对其进行聚类,也就是将其中相似的样本标记为同一类,具体地说,我们想得到一个联合概率分布 P(x(i),z(i))P(x^{(i)},z^{(i)})P(x(i),z(i)),其中 z(i)z^{(i)}z(i) 代表数据集中无法观测到的样本类别,是一个隐变量。
  • MoG全称为Mixture of Gaussian,其中假设 z(i)~Multinoulli(Φ)z^{(i)}~Multinoulli(\Phi)z(i)~Multinoulli(Φ),Φ=[ϕ1,ϕ2,..,ϕk−1]\Phi=[\phi_1,\phi_2,..,\phi_{k-1}]Φ=[ϕ1​,ϕ2​,..,ϕk−1​],ϕj\phi_jϕj​ 代表 P(z(i)=j)P(z^{(i)}=j)P(z(i)=j);(x(i)∣z(i)=j)~N(μj,Σj)(x^{(i)}|z^{(i)}=j)~N(\mu_j,\Sigma_j)(x(i)∣z(i)=j)~N(μj​,Σj​).
  • 高斯混合模型中假定隐变量样本类别服从多项分布,而每一项服从一个高斯分布。换言之,该模型假设数据的产生过程如下:首先我们以概率 ϕj\phi_jϕj​ 从 {1,2,..,k}\{1,2,..,k\}{1,2,..,k} 中选出 z(i)=jz^{(i)}=jz(i)=j,而后数据 x(i)x^{(i)}x(i) 由第 jjj 个高斯分布 N(μj,Σj)N(\mu_j,\Sigma_j)N(μj​,Σj​) 产生。
  • 注意,我们实际并不知道数据是如何产生的,在这里表现为获得的数据集中 z(i)z^{(i)}z(i) 作为隐变量并不可见,这是无监督学习中遇到的困难,使得我们用于监督学习中的很多手段失效。
  • 关于常见的随机变量分布,可能出现术语上的不同,参考【常用概率分布

Recap:监督学习情境.

  • 基于极大似然估计来获得我们模型中的参数 ϕ,μ,Σ\phi,\mu,\Sigmaϕ,μ,Σ,其似然函数如下所示:
  • 对于监督学习,z(i)z^{(i)}z(i) 是已知的,通常写为 y(i)y^{(i)}y(i),为了保持上下文一致,我们下面的结果依然用 z(i)z^{(i)}z(i) 表示类别,最大化似然函数后的参数估计结果如下:
  • 得到的结果几乎与GDA中一致,不同之处在于常见的GDA仅用于二分类问题,并且认为产生两类样本的高斯分布有着相同的协方差矩阵。忽略其不同之处,我们发现,如果拥有了样本的类别标签,那么MoG的模型计算就很简单,可以认为是GDA的推广版本。
  • 那么,如何求解无监督学习下的该问题呢(称为密度估计Density Estimation)?

无监督学习情境.

  • 由于缺少对样本数据类别的观测,即 z(i)z^{(i)}z(i) 是未知的,我们无法对数据进行MoG模型的参数极大似然估计,解决该问题的方法之一是首先进行参数猜测,根据参数和无标签数据估计出隐变量 z(i)z^{(i)}z(i) 的分布;第二步回归到有监督学习的情境,根据第一步中猜测的类别变量,进行参数的更新。这是一个迭代算法,直至收敛时停止。
  • 上述过程是EM算法,即期望最大化算法Expectation Maximization在高斯混合模型中的应用。

EM in MoG.

  • EM算法在MoG中的使用如下图所示:
  • 首先我们对模型中的参数 ϕ,μ,Σ\phi,\mu,\Sigmaϕ,μ,Σ进行猜测,并在贝叶斯公式的基础上得到后验概率 P(z(i)∣x(i);ϕ,μ,Σ)P(z^{(i)}|x^{(i)};\phi,\mu,\Sigma)P(z(i)∣x(i);ϕ,μ,Σ).
  • 其中根据MoG的假设,先验概率 P(z(i);ϕ)P(z^{(i)};\phi)P(z(i);ϕ) 服从多项分布,条件概率P(x(i)∣z(i);μ,Σ)P(x^{(i)}|z^{(i)};\mu,\Sigma)P(x(i)∣z(i);μ,Σ) 服从高斯分布,所以我们可以在假设与猜测的基础上得到一个后验概率;然后第二步在此基础上进行极大似然估计,得到一组更新的参数值。
  • 本篇中领会EM算法的思想即可,不必深究具体的公式,稍后会给出逻辑缜密的推导以及该算法为什么叫做期望最大化。对比【k-means】算法,我们发现其实它们求解参数的过程有些类似,参数猜测之后,首先根据参数来对样本标定类别,而后进行新一轮参数求解,如此迭代。
  • 二者稍有区别,在k-means中,类别标记 c(i)c^{(i)}c(i) 是一个【hard】的概念,即一个样本非此即彼;而EM算法中尝试猜测一个样本属于每个类 z(i)z^{(i)}z(i) 的概率分布,即 wj(i)=P(z(i)=j∣x(i);ϕ,μ,Σ)w_j^{(i)}=P(z^{(i)}=j|x^{(i)};\phi,\mu,\Sigma)wj(i)​=P(z(i)=j∣x(i);ϕ,μ,Σ),是一个【soft】的概念。
  • 看到这里,一定会有很多疑问:为什么要第一步中要进行那样的猜测;第二步中是如何进行参数估计的;EM算法名称中的期望最大化在哪里体现;EM算法的一般形式是怎样的…
  • 从EM到MoG

【ML】MoG与EM:从MoG到EM相关推荐

  1. 【ML】MoG与EM:从EM到MoG

    文章目录 EM:从极大似然开始. 算法推导. 收敛性. 坐标上升. 回到MoG. Why EM ? 关于Jensen等数学细节. Jensen Inequality. 一些细节. EM:从极大似然开始 ...

  2. 【转载】(EM算法)The EM Algorithm

    (EM算法)The EM Algorithm EM是我一直想深入学习的算法之一,第一次听说是在NLP课中的HMM那一节,为了解决HMM的参数估计问题,使用了EM算法.在之后的MT中的词对齐中也用到了. ...

  3. ML 12 13 mixture of gaussions and EM

    先来看下普通的EM算法: 该算法的目的是给的一些样本点,然后反推符合这些样本点所属分布函数们(可能有多个)的参数 z(i)=jz^{(i)}=j表示是第jj个分布函数,Qi(z(i)=j)Q_i(z^ ...

  4. (EM算法)The EM Algorithm

    EM是我一直想深入学习的算法之一,第一次听说是在NLP课中的HMM那一节,为了解决HMM的参数估计问题,使用了EM算法.在之后的MT中的词对齐中也用到了.在Mitchell的书中也提到EM可以用于贝叶 ...

  5. oracle em 界面乱码,oracle em 按钮乱码解决办法及em网页变成英文

    oracle em 按钮乱码解决办法及em网页变成英文以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一 oracle ...

  6. oracle em agent,ORACLE 11G EM 配置命令及问题处理

    11g装好以后,一直未用EM,昨天晚上和今天晚上终于抽时间把EM启动起来了,还遇到一点小问题, 1.EM配置的一些命令 创建一个EM资料库 emca -repos create 重建一个EM资料库 e ...

  7. EM算法极其推广---EM算法的收敛性

    2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/liyangke/blog/2960865

  8. 【EM+GMM】基于EM和GMM算法的目标轨迹跟踪和异常行为识别matlab仿真

    1.软件版本 matlab2013b 2.系统概述 3.部分源码 clc; clear; close all; warning off; addpath 'func\'%训练数据 Is = imrea ...

  9. 每天进步一点点《ML - 从极大似然到EM算法》

    一:极大似然 1:概念引入 极大似然参数估计是概率论中学习过的内容,就是预先定义概率分布模型,根据一堆的同概率分布的一堆样本数据去估计该概率模型中的未知参数. 举个例子:有很多西瓜x,我们可以得到每一 ...

最新文章

  1. 华为,你终于活成了他们害怕的样子
  2. 欧式期权matlab编码蒙特卡罗方法,基于MATLAB的金融工程方法与实践第七章 基于蒙特卡洛方法的期权定价.ppt...
  3. Node.js 的http.serverRequest 或http.IncomingMessage
  4. python批量删除注释_批量删除C和C++注释
  5. Java基础学习总结(160)——JDK15正式发布,划时代的ZGC同时宣布转正
  6. SQl 2000和SQL 2005之间的一些语法区别
  7. 赶在 2018 年前推荐 30 个最火爆的开源库
  8. jquery基础研究学习【基础】
  9. [Android实例] 【eoeAndroid社区索引】图形图像之动画
  10. 冰点还原精灵有什么作用
  11. 计算机网络教室的使用记录表,计算机网络教室管理工作总结
  12. ESP-12S 最小系统
  13. 磁盘管理器显示状态良好 计算机不显示,win7系统打开磁盘管理显示显示状态良好(有危险)的解决方法...
  14. EEG实验中Matlab打标方法及遇见问题
  15. 图片怎么添加滤镜?给图片调色这样做
  16. Codeforces Round #506 (Div. 3)题解
  17. Win10照片应用的小bug——自动模糊图片(有过渡色)
  18. Android博通BCM libbt-vendor.so 分析蓝牙初始化流程
  19. bsdiff算法c语言实现,iOS 使用bsdiff进行资源文件增量更新(bsdiff / bspatch)
  20. FreeRTOS笔记篇:第五章 --软件定时

热门文章

  1. 少儿编程培训发展的重要趋势
  2. 交通运输词汇(zt)
  3. 163 VIP邮箱如何群发邮件?注册电子邮箱哪家发信效果好?
  4. 海康摄像机sdk踩坑记述
  5. Qt Quick实现九宫格划指锁屏视图
  6. 模拟cmos集成电路(3)
  7. 嵌入式 BT656/BT601/BT1120协议差异小结
  8. js 格式化当前时间 日期推算
  9. Python写文件到指定路径以及读取文件内容
  10. 计算机控制双积分系统,双积分式ADC的原理及如何设计