转载自:

最大似然估计(Maximum likelihood estimation)(通过例子理解)

似然与极大似然估计

似然与概率

在统计学中,似然函数(likelihood function,通常简写为likelihood,似然)是一个非常重要的内容,在非正式场合似然和概率(Probability)几乎是一对同义词,但是在统计学中似然和概率却是两个不同的概念。概率是在特定环境下某件事情发生的可能性,也就是结果没有产生之前依据环境所对应的参数来预测某件事情发生的可能性,比如抛硬币,抛之前我们不知道最后是哪一面朝上,但是根据硬币的性质我们可以推测任何一面朝上的可能性均为50%,这个概率只有在抛硬币之前才是有意义的,抛完硬币后的结果便是确定的;而似然刚好相反,是在确定的结果下去推测产生这个结果的可能环境(参数),还是抛硬币的例子,假设我们随机抛掷一枚硬币1,000次,结果500次人头朝上,500次数字朝上(实际情况一般不会这么理想,这里只是举个例子),我们很容易判断这是一枚标准的硬币,两面朝上的概率均为50%,这个过程就是我们根据结果来判断这个事情本身的性质(参数),也就是似然。

结果和参数相互对应的时候,似然和概率在数值上是相等的,如果用 θ 表示环境对应的参数,x 表示结果,那么概率可以表示为:

P(x|θ) 
P(x|θ) 
是条件概率的表示方法,θ是前置条件,理解为在θ 的前提下,事件 x 发生的概率,相对应的似然可以表示为:

 
理解为已知结果为 x ,参数为θ (似然函数里θ 是变量,这里## 标题 ##说的参数是相对与概率而言的)对应的概率,即:

 
需要说明的是两者在数值上相等,但是意义并不相同, 是关于 θ 的函数,而 P 则是关于 x 的函数,两者从不同的角度描述一件事情。

举个例子

以伯努利分布(Bernoulli distribution,又叫做两点分布或0-1分布)为例:

也可以写成以下形式: 

这里注意区分 f(x;p)与前面的条件概率的区别,引号后的 p 仅表示 f 依赖于 p 的值,p并不是 f的前置条件,而只是这个概率分布的一个参数而已,也可以省略引号后的内容:

对于任意的参数 pp 我们都可以画出伯努利分布的概率图,当 p=0.5p=0.5 时:

                    f(x)=0.5
  • 1
  • 2

我们可以得到下面的概率密度图: 

从似然的角度出发,假设我们观测到的结果是 x=0.5x=0.5(即某一面朝上的概率是50%,这个结果可能是通过几千次几万次的试验得到的,总之我们现在知道这个结论),可以得到以下的似然函数: 

对应的图是这样的: 

与概率分布图不同的是,似然函数是一个(0, 1)内连续的函数,所以得到的图也是连续的,我们很容易看出似然函数的极值(也是最大值)在 p=0.5p=0.5 处得到,通常不需要做图来观察极值,令似然函数的偏导数为零即可求得极值条件。

ps. 似然函数里的 pp 描述的是硬币的性质而非事件发生的概率(比如 p=0.5p=0.5 描述的是一枚两面均匀的硬币)。为了避免混淆,可以用其他字母来表示这个性质,如果我们用 ππ 来表示,那么似然函数就可以写成: 

似然函数的最大值

似然函数的最大值意味着什么?让我们回到概率和似然的定义,概率描述的是在一定条件下某个事件发生的可能性,概率越大说明这件事情越可能会发生;而似然描述的是结果已知的情况下,该事件在不同条件下发生的可能性,似然函数的值越大说明该事件在对应的条件下发生的可能性越大。

现在再来看看之前提到的抛硬币的例子:

上面的 pp (硬币的性质)就是我们说的事件发生的条件,LL 描述的是性质不同的硬币,任意一面向上概率为50% 的可能性有多大,是不是有点绕?让我们来定义 A:

A=事件的结果=任意一面向上概率为50%

那么 LL 描述的是性质不同的硬币,A 事件的可能性有多大,这么一说是不是清楚多了?

在很多实际问题中,比如机器学习领域,我们更关注的是似然函数的最大值,我们需要根据已知事件来找出产生这种结果最有可能的条件,目的当然是根据这个最有可能的条件去推测未知事件的概率。在这个抛硬币的事件中,pp 可以取 [0, 1] 内的所有值,这是由硬币的性质所决定的,显而易见的是 p=0.5p=0.5 这种硬币最有可能产生我们观测到的结果。

对数化的似然函数

实际问题往往要比抛一次硬币复杂得多,会涉及到多个独立事件,在似然函数的表达式中通常都会出现连乘: 

对多项乘积的求导往往非常复杂,但是对于多项求和的求导却要简单的多,对数函数不改变原函数的单调性和极值位置,而且根据对数函数的性质可以将乘积转换为加减式,这可以大大简化求导的过程: 

在机器学习的公式推导中,经常能看到类似的转化。

看到这应该不会再那么迷糊了吧~最后再来个例子:


举个别人博客中的例子,假如有一个罐子,里面有黑白两种颜色的球,数目多少不知,两种颜色的比例也不知。我 们想知道罐中白球和黑球的比例,但我们不能把罐中的球全部拿出来数。现在我们可以每次任意从已经摇匀的罐中拿一个球出来,记录球的颜色,然后把拿出来的球 再放回罐中。这个过程可以重复,我们可以用记录的球的颜色来估计罐中黑白球的比例。假如在前面的一百次重复记录中,有七十次是白球,请问罐中白球所占的比例最有可能是多少?很多人马上就有答案了:70%。而其后的理论支撑是什么呢?

我们假设罐中白球的比例是p,那么黑球的比例就是1-p。因为每抽一个球出来,在记录颜色之后,我们把抽出的球放回了罐中并摇匀,所以每次抽出来的球的颜 色服从同一独立分布。这里我们把一次抽出来球的颜色称为一次抽样。题目中在一百次抽样中,七十次是白球的概率是P(Data | M),这里Data是所有的数据,M是所给出的模型,表示每次抽出来的球是白色的概率为p。如果第一抽样的结果记为x1,第二抽样的结果记为x2... 那么Data = (x1,x2,…,x100)。这样,
  • 1
  • 2

    P(Data | M)

     = P(x1,x2,…,x100|M)

     = P(x1|M)P(x2|M)…P(x100|M)

     = p^70(1-p)^30.

那么p在取什么值的时候,P(Data |M)的值最大呢?将p^70(1-p)^30对p求导,并其等于零。

    70p^69(1-p)^30-p^70*30(1-p)^29=0。

    解方程可以得到p=0.7。

在边界点p=0,1,P(Data|M)=0。所以当p=0.7时,P(Data|M)的值最大。这和我们常识中按抽样中的比例来计算的结果是一样的。

假如我们有一组连续变量的采样值(x1,x2,…,xn),我们知道这组数据服从正态分布,标准差已知。请问这个正态分布的期望值为多少时,产生这个已有数据的概率最大?

    P(Data | M) = ?

根据公式 

由上可知最大似然估计的一般求解过程:

  (1) 写出似然函数;

  (2) 对似然函数取对数,并整理;

  (3) 求导数 ;

  (4) 解似然方程

EM算法(一)--------------------最大似然估计相关推荐

  1. EM算法和最大似然估计

    最大似然估计 根据抽样分布确定整体分布,已经知道了结果,然后寻求使该结果出现的可能性最大的条件,以此作为估计值. 抽到100个男生:我们就只需要找到一个参数 θ,其对应的似然函数L(θ) 最大,也就是 ...

  2. em算法详细例子及推导_outlier analysis 补充——EM算法

    August:人人都懂EM算法​zhuanlan.zhihu.com 全网最容易理解最直观最形象的em算法的解释文. 首先,EM和极大似然法一样需要提前假设数据的分布符合XX分布情况,EM算法和极大似 ...

  3. 西瓜书+实战+吴恩达机器学习(二三)EM算法和变分推断

    文章目录 0. 前言 1. EM算法 2. 变分推断 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 EM算法是常用的估计参数隐变量的方法,它是一种迭代式算法,E ...

  4. 概率语言模型及其变形系列-PLSA及EM算法

    转载自:http://blog.csdn.net/yangliuy/article/details/8330640 本系列博文介绍常见概率语言模型及其变形模型,主要总结PLSA.LDA及LDA的变形模 ...

  5. 机器学习 EM算法理解

    文章目录 前言 极大似然 问题描述 参数估计 极大似然估计 极大似然应用 极小化代价函数 EM算法 EM算法推导 基础知识 凸函数 Jensen不等式 期望 推导过程 算法流程 另一种呢理解 EM算法 ...

  6. 11.EM算法、HMM模型

    EM算法入门 算法介绍 极⼤似然估计 EM算法实例描述 EM算法流程 EM算法实例 EM初级版 EM进阶版 HMM模型入门 马尔科夫链 ⻢尔科夫链即为状态空间中从⼀个状态到另⼀个状态转换的随机过程. ...

  7. EM算法——有隐含变量时,极大似然用梯度法搞不定只好来猜隐含变量期望值求max值了...

    摘自:https://www.zhihu.com/question/27976634 简单说一下为什么要用EM算法 现在一个班里有50个男生,50个女生,且男生站左,女生站右.我们假定男生的身高服从正 ...

  8. (转载)机器学习知识点(十五)从最大似然到EM算法浅解

    从最大似然到EM算法浅解 机器学习十大算法之一:EM算法.能评得上十大之一,让人听起来觉得挺NB的.什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题.神为什么是神,因为神能做 ...

  9. 一个算法对于某个输入的循环次数是可以事先估计出来的_结合各路博客的EM算法理解...

    本文主要是记录个人对EM算法的理解,原料都是基于各路博客,这里对原文博主表示感谢. Part 1: 第一个博客来自于 https://www.jianshu.com/p/1121509ac1dc .基 ...

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

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

最新文章

  1. 设置窗口大小后无法滚动_新款奥迪A6L更换变速器机电单元后无法完成油冷却阀基本设置...
  2. 019_Jedis的List数据类型
  3. Kubernetes Controller Manager 工作原理
  4. [转]将Ubuntu默认的邮件客户端Evolution替换为Thunderbird
  5. 【学习排序】 Learning to Rank中Pointwise关于PRank算法源码实现
  6. html5中矩形条怎么写,html5中往矩形中贴图片
  7. linux系统怎样挂载虚拟盘,linux 应用盘(从盘)挂载方法linux操作系统 -电脑资料...
  8. tomcat中 JVM 内存溢出及合理配置
  9. 来告诉大家 AddressSanitizer: stack-buffer-overflow on address 一般都是代码哪里出现了问题
  10. 开发板Linux内核,芯灵思SinlinxA33开发板Linux内核workqueue(附实测代码)
  11. jquery.form.js的ajaxSubmit和ajaxForm使用
  12. IEEE1588v2解析(1)--同步的概念
  13. matlab 排序 cell,MATLAB中对cell数组排序
  14. 15个素材下载网站,从此不做「伸手党」!
  15. lay-href页面不跳转
  16. Python(18)——Django实战1之可重用注册登录系统(从面到点剖析)
  17. 5G业务测试方法与验证
  18. TexMaker(Latex编辑器)软件的“文献引用”操作:Xelatex方式运行的操作方法
  19. skywalking源码--探针插件工程结构
  20. 微信群管理之全网黑名单的实现

热门文章

  1. html打字机,打字机动画.html
  2. Python基础+数据科学入门(七)
  3. tomcatJava程序老是死掉
  4. winform 发布应用程序 提示 “未能注册模块(程序路径)\ieframe.dll”
  5. 取模软件 模拟显示验证取模数据正确性 逆向 把点阵数组bin文件转显示定位
  6. httpd虚拟主机andhttps
  7. 【Prompting】ChatGPT Prompt Engineering开发指南(2)
  8. hadoop恢复记录-转载
  9. 【第146期】回复网友@pcy:如何准备校招
  10. 如何连接计算机与DSP仿真器,DSP仿真器连不上的原因分析