极大似然法

极大似然,或者称最大似然(Maximum likelihood)。

目的

利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值。

原理

极大似然估计是建立在极大似然原理的基础上的一个统计方法,是概率论在统计学中的应用。极大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。通过若干次试验,观察其结果,利用试验结果得到某个参数值能够使样本出现的概率为最大,则称为极大似然估计。

举例

说人话就是,学霸和学渣考试结束之后,一个成绩是A,一个成绩是C。这时候,一般是猜测学霸的成绩是A;学渣的成绩为C。这就体现了极大似然的基本思想。在已知结果集(一个A,一个C)的情况下,根据一些先验知识(学霸成绩有很大可能高于学渣),得到分析的结果(学霸A,学渣C)。一句话总结,已知结果,求出现这个结果的最大可能条件

数学定义

似然函数:L(θ)L(θ)

最大似然估计量(需要得到的结果):θθ

目的是需要找到一个θθ,使得L(θ)L(θ)最大。这个最大的θθ表示为:θ^=argmaxL(θ)θ^=arg⁡maxL(θ)。(argarg表示在θθ所有的索引值)

在某些情况下,L(θ)L(θ)是用连乘来表示的,如L(θ)=∏i=1np(xi;θ)L(θ)=∏i=1np(xi;θ)。此时,为了便于分析,将其转换为连加计算,H(θ)=lnL(θ)=∑i=1np(xi;θ)H(θ)=ln⁡L(θ)=∑i=1np(xi;θ)

此时,问题转换为求L(θ)L(θ)的极大值,方法就是运用求导(前提是这个函数连续可微)。值得一提的是,θθ不一定只有一个值,可能为一个向量,所以求极大值的时候需要对每个参数进行求偏导。

EM算法

EM算法,最大期望算法(Expectation-maximization)

目的

在统计中被用于寻找,依赖于不可观察的隐性变量的概率模型中,参数的最大似然估计。

原理

最大期望算法经过两个步骤交替进行计算,第一步是计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值;第二步是最大化(M),最大化在E步上求得的最大似然值来计算参数的值。M步上找到的参数估计值被用于下一个E步计算中,这个过程不断交替进行。

举例

说人话就是,一堆钞票(很多很多),在不借助外力(点钞机)的情况下,如何平均分成两部分。最简单的做法就是,首先大致分为两堆,然后比较两堆钞票的高低;将高堆的一部分钞票转给低堆;来回往复,直到两堆同高。前提钞票是崭新,每张厚度一样。为了想得到在开始状态下未知的两个参数A、B(平均分为两堆钞票),前提条件是得到A了就可以得到B,得到B也可以得到A。此时,就可以随机(指定)赋予A某初值(先大概分一堆钞票出来),B也得到了一个值(另一堆钞票就是B);根据B的当前值(钞票高度)重新估计A值(对比两堆高低,进行转钞票),直到收敛(两堆钞票相等)。一句话总结,想要得到一堆有关联的未知参数,先猜一个大概的参数结果,再不断的调整,直到参数结果符合条件(收敛)

数学定义

样本集:{x(1),x(2),⋯,xm}{x(1),x(2),⋯,xm}

每个样本对应的类别(未知):z(i)z(i)

基于最大似然问题的定义,概率估计模型p(x(i);θ)p(x(i);θ)。现在多了一个未知变量z(θ)z(θ),变成了p(x(i),z(i);θ)p(x(i),z(i);θ)。问题还是一样,求解θ^θ^。

E步骤:根据参数初始值或上一次迭代的参数值(一开始定义的钞票高度或者每次调整完钞票高度后的两堆高度)来计算隐性变量(z(i)z(i)的后验概率(隐性变量的期望,新估计值)

M步骤:将似然函数极大化获得新参数值(根据B堆高度调整A堆高度)

推导过程

一个背景知识,Jensen不等式。ff是凸函数,XX是随机变量,公式是这样的,E(f(X))≥f(EX)E(f(X))≥f(EX)。具体推导过程不做介绍。

H(θ)=logL(θ)=∑i=1mlogp(x(i);θ)=∑i=1mlog∑z(i)p(x(i),z(i);θ)=∑i=1mlog∑z(i)Qi(z(i))p(x(i),z(i);θ)Qi(z(i))≥∑i=1m∑z(i)Qi(z(i))logp(x(i),z(i);θ)Qi(z(i))H(θ)=log⁡L(θ)=∑i=1mlog⁡p(x(i);θ)=∑i=1mlog⁡∑z(i)p(x(i),z(i);θ)=∑i=1mlog⁡∑z(i)Qi(z(i))p(x(i),z(i);θ)Qi(z(i))≥∑i=1m∑z(i)Qi(z(i))log⁡p(x(i),z(i);θ)Qi(z(i))

稍作解释,第一行到第二行,是引出z(i)z(i)这个未知变量,第三行是引入一个额外的Qi(z(i))Qi(z(i))变量,便于使用Jensen不等式,第四行运用Jensen不等式。

接下来,就是求解p(x(i),z(i);θ)Qi(z(i))p(x(i),z(i);θ)Qi(z(i)),令其等于cc。由推导可得∑zQi(z(i))=1∑zQi(z(i))=1。所以:

Qi(z(i))=p(x(i),z(i);θ)∑zp(x(i),z;θ)=p(x(i),z(i);θ)p(x(i);θ)=p(z(i)|x(i);θ)Qi(z(i))=p(x(i),z(i);θ)∑zp(x(i),z;θ)=p(x(i),z(i);θ)p(x(i);θ)=p(z(i)|x(i);θ)

所以,接下来就可以正式的进行E、M步骤

E:Qi(z(i))=p(zi|x(i);θ)Qi(z(i))=p(zi|x(i);θ)

M:θ=argmax∑i∑z(i)Qi(z(i))logp(x(i),z(i);θ)Qi(z(i))θ=arg⁡max∑i∑z(i)Qi(z(i))log⁡p(x(i),z(i);θ)Qi(z(i))

最后收敛。关于一定会收敛的证明。

在第t步骤中,

L(θ(t))=∑i∑z(i)Q(t)i(z(i))logp(x(i),z(i);θ(t))Q(t)i(z(i))L(θ(t))=∑i∑z(i)Qi(t)(z(i))log⁡p(x(i),z(i);θ(t))Qi(t)(z(i))

之后进行M步骤,固定了Q(t)i(z(i))Qi(t)(z(i)),求新的θθ,即θ(t+1)θ(t+1)。所以,

L(θ(t+1))≥∑i∑z(i)Q(t)i(z(i))logp(x(i),z(i);θ(t+1))Q(t)i(z(i))L(θ(t+1))≥∑i∑z(i)Qi(t)(z(i))log⁡p(x(i),z(i);θ(t+1))Qi(t)(z(i))

显然,L(θ(t+1))≥L(θ(t))L(θ(t+1))≥L(θ(t))

参考文章:

极大似然法(ML)与最大期望法(EM)相关推荐

  1. 理解最大期望算法EM的三层境界(1)

    Expectation Maximization(EM) 不要强求不可知,要从已知推未知 在刚开始学习时,我觉得EM算法真的难,反反复复就是看不懂.我一开始找到的学习资料上来就是一大堆算法公式推导.我 ...

  2. 最大期望(EM)算法

    一.最大期望(EM)算法: EM算法是在依赖于无法观测的隐藏变量的概率模型中,寻找参数最大似然估计或者最大后验估计的算法. 二.最大期望算法的两个步骤: 第一步是计算期望(E),利用概率模型参数的现有 ...

  3. 期望最大化(EM)算法真如用起来那么简单?

    声明:本文改编自订阅号"夕小瑶的卖萌屋"中的 <机器学习系列-强填EM算法在理论与工程之间的鸿沟(上)>.<机器学习系列-强填EM算法在理论与工程之间的鸿沟(下) ...

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

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

  5. 期望最大EM(Expectation Maximum)算法是什么?为什么有时候不用梯度下降而是用EM算法

    EM(Expectation  Maximum)的应用: EM算法有很多的应用,最广泛的就是GMM混合高斯模型.聚类(典型的KMeans算法的过程就属于EM算法).HMM等等. EM的核心工作就是隐变 ...

  6. 用python求期望_Python——EM(期望极大算法)教学(附详细代码与注解)

    今天,我们详细的讲一下EM算法. 前提准备 Jupyter notebook 或 Pycharm 火狐浏览器或谷歌浏览器 win7或win10电脑一台 网盘提取csv数据 需求分析 实现高斯混合模型的 ...

  7. 研究型论文_CICIDS2017 数据集中基于异常的入侵检测系统的机器学习基准测试(英文论文)

    文章目录 Benchmarking of Machine Learning for Anomaly Based Intrusion Detection Systems in the CICIDS201 ...

  8. 机器学习-算法-半监督学习:半监督学习(Semi-supervised Learning)算法

    人工智能-机器学习-算法-半监督学习:半监督学习(Semi-supervised Learning)算法 一.半监督学习算法提出的背景 1.监督学习算法 2.无监督学习算法 3.监督学习的特征选择方法 ...

  9. 从决策树学习谈到贝叶斯分类算法、EM、HMM - 结构之法 算法之道

    转载自:http://scm.zoomquiet.io/data/20121220000040/index.html 第一篇:从决策树学习谈到贝叶斯分类算法.EM.HMM (Machine Learn ...

  10. 最大化期望算法(EM)详解

    我们知道最大似然估计的根本目的是根据抽样的到的样本(即数据),反推出最有可能的分布参数(即模型),这是一个非常典型的机器学习的思想.所以在很多领域最大似然估计有着极为广泛的应用.然而,如果已知的数据中 ...

最新文章

  1. 基于 CoreText 实现的高性能 UITableView
  2. R语言cut函数实现数据分箱及因子化实战
  3. mint-ui的Loadmore组件使用示例
  4. 首发:徐亦达教授团队最新发表的两篇机器学习论文
  5. NPoco for MySQL 配置
  6. linux下recv 、send阻塞、非阻塞区别和用法
  7. MySQL中的常用函数
  8. 怎样设置计算机安全模式,电脑如何设置F8进入安全模式?
  9. ubuntu18.04下 c++安装opencv-3.4.6,c++安装opencv-3.4.9,clion配置opencv-3.4.6与 python安装 opencv-3.4.6
  10. 基于Cocos2d-x开发guardCarrot--7 《保卫萝卜2》关卡选择页面开发
  11. Sauceware Audio Scorch for Mac - 嘻哈说唱音频乐器
  12. java规则引擎_Drools规则引擎(Java)
  13. 一、Multisim软件介绍
  14. MDT修改部署时的背景图
  15. Vue开发与调试工具vue-devtools
  16. 如何设计微信公众号的封面图?教你设计自己的专属公众号封面
  17. Django项目nginx+gunicorn 部署
  18. 无线网技术——知识点
  19. Linux:chmod -R 777 *含义
  20. 十二栋文化牵手万代南梦宫 重构夹机娱乐新业态

热门文章

  1. POST 请求的四种提交数据方式
  2. Pyechars练习分析二手房数据
  3. 机器学习算法一之基于K均值聚类算法实现数据聚类及二维图像像素分割
  4. HTML 与 microsoftOffice word中字体对照表
  5. 文献阅读-深度学习跨模态图文检索研究综述
  6. 在vscode和android studio中安装代码注释翻译插件
  7. 如何快速制作一张数据地图,收藏这10张模板就够了
  8. 计算机运算实际运算的误差,误差
  9. Windows下使用SSH命令登录Linux服务器
  10. 普中28335开发攻略_TMS320F28335项目开发记录5_28335之CCS编程基础