点击上方“视学算法”,选择加"星标"或“置顶

重磅干货,第一时间送达

作者丨夏飞@知乎(已授权)

来源丨https://zhuanlan.zhihu.com/p/32480810

编辑丨极市平台

导读

深入浅出最大似然估计和最大后验估。

TLDR (or the take away)

  • 频率学派 - Frequentist - Maximum Likelihood Estimation (MLE,最大似然估计)

  • 贝叶斯学派 - Bayesian - Maximum A Posteriori (MAP,最大后验估计)

概述

有时候和别人聊天,对方会说自己有很多机器学习经验,深入一聊发现,对方竟然对MLE和MAP一知半解,至少在我看来,这位同学的机器学习基础并不扎实。难道在这个深度学习盛行的年代,不少同学都只注重调参数?

现代机器学习的终极问题都会转化为解目标函数的优化问题,MLE和MAP是生成这个函数的很基本的思想,因此我们对二者的认知是非常重要的。这次就和大家认真聊一聊MLE和MAP这两种estimator。

两大学派的争论

抽象一点来讲,频率学派和贝叶斯学派对世界的认知有本质不同:频率学派认为世界是确定的,有一个本体,这个本体的真值是不变的,我们的目标就是要找到这个真值或真值所在的范围;而贝叶斯学派认为世界是不确定的,人们对世界先有一个预判,而后通过观测数据对这个预判做调整,我们的目标是要找到最优的描述这个世界的概率分布。

在对事物建模时, 用 表示模型的参数, 请注意, 解决问题的本质就是求 。那么:

(1) 频率学派: 存在唯一真值 。举一个简单直观的例子-抛硬币, 我们用 来表示硬币 的bias。抛一枚硬币100次, 有20次正面朝上, 要估计抛硬币正面朝上的bias 。在 频率学派来看, , 很直观。当数据量趋于无穷时, 这种方法能给出精准的估计; 然而缺乏数据时则可能产生严重的偏差。例如, 对于一枚均匀硬币, 即 , 抛郑5次, 出现5 次正面 (这种情况出现的概率是 ), 频率学派会直接估计这枚硬币 , 出现严重错误。

(2) 贝叶斯学派: 是一个随机变量, 符合一定的概率分布。在贝叶斯学派里有两大输入和一大输出, 输入是先验 (prior)和似然 (likelihood), 输出是后验 (posterior)。先验, 即 , 指的是在没有观测到任何数据时对 的预先判断, 例如给我一个硬币, 一种可行的先验是认为这个硬币有很大的概率是均匀的, 有较小的概率是是不均匀的; 似然, 即 , 是假设 已知后我们观察到的数据应该是什么样子的; 后验, 即 , 是最终的参数分布。贝叶斯估计的基础是贝叶斯公式, 如下:

同样是抛硬币的例子, 对一枚均匀硬币抛 5 次得到 5 次正面, 如果先验认为大概率下这个硬币是均 匀的 (例如最大值取在0.5处的Beta分布), 那么 , 即 , 是一个distribution, 最 大值会介于0.5 1之间, 而不是武断的 。

这里有两点值得注意的地方:

  • 随着数据量的增加,参数分布会越来越向数据靠拢,先验的影响力会越来越小

  • 如果先验是uniform distribution,则贝叶斯方法等价于频率方法。因为直观上来讲,先验是uniform distribution本质上表示对事物没有任何预判

MLE - 最大似然估计

Maximum Likelihood Estimation, MLE是频率学派常用的估计方法!

假设数据 是i.i.d. 的一组抽样, 。其中i.i.d. 表示 Independent and identical distribution,独立同分布。那么MLE对 的估计方法可以如下推导:

最后这一行所优化的函数被称为Negative Log Likelihood (NLL),这个概念和上面的推导是非常重要的!

我们经常在不经意间使用MLE,例如

  • 上文中关于频率学派求硬币概率的例子,其方法其实本质是由优化NLL得出。本文末尾附录中给出了具体的原因 :-)

  • 给定一些数据,求对应的高斯分布时,我们经常会算这些数据点的均值和方差然后带入到高斯分布的公式,其理论依据是优化NLL

  • 深度学习做分类任务时所用的cross entropy loss,其本质也是MLE

MAP - 最大后验估计

Maximum A Posteriori, MAP是贝叶斯学派常用的估计方法!

同样的, 假设数据 是i.i.d.的一组抽样, 。那么MAP对 的估计方法可以如下推导:

其中, 第二行到第三行使用了贝叶斯定理, 第三行到第四行 可以丢掉因为与 无关。注意 其实就是 , 所以MLE和MAP在优化时的不同就是在于先验项 。好的, 那现在我们来研究一下这个先验项, 假定先验是一个高斯分布, 即

那么, 。至此, 一件神奇的事情发生了 -- 在MAP中使用一个高斯分布的先验等价于在MLE中采用L2的regularizaton!

再稍微补充几点:

  • 我们不少同学大学里学习概率论时,最主要的还是频率学派的思想,其实贝叶斯学派思想也非常流行,而且实战性很强

  • CMU的很多老师都喜欢用贝叶斯思想解决问题;我本科时的导师朱军老师也在做贝叶斯深度学习(https://arxiv.org/abs/1709.05870)的工作,有兴趣可以关注一下。

后记

有的同学说:“了解这些没用,现在大家都不用了。”这种想法是不对的,因为这是大家常年在用的知识,是推导优化函数的核心,而优化函数又是机器学习 (包含深度学习) 的核心之一。这位同学有这样的看法,说明对机器学习的本质并没有足够的认识,而让我吃惊的是,竟然有不少其他同学为这种看法点赞。内心感到有点儿悲凉,也引发了我写这篇文章的动力,希望能帮到一些朋友 :-)

参考资料

[1] Bayesian Method Lecture(https://www.utdallas.edu/~nrr150130/cs7301/2016fa/lects/Lecture_14_Bayes.pdf), UT Dallas.

[2] MLE, MAP, Bayes classification Lecture(https://www.cs.cmu.edu/~aarti/Class/10701_Spring14/slides/MLE_MAP_Part1.pdf), CMU.

附录

为什么说频率学派求硬币概率的算法本质是在优化NLL?

因为抛硬币可以表示为参数为 的Bernoulli分布, 即

其中 表示第 次抛出正面。那么,

求导数并使其等于零,得到

即 ,也就是出现正面的次数除以总共的抛郑次数。

点个在看 paper不断!

聊一聊机器学习的MLE和MAP:最大似然估计和最大后验估计相关推荐

  1. 【机器学习算法-python实现】最大似然估计(Maximum Likelihood)

    1.背景 最大似然估计是概率论中常常涉及到的一种统计方法.大体的思想是,在知道概率密度f的前提下,我们进行一次采样,就可以根据f来计算这个采样实现的可能性.当然最大似然可以有很多变化,这里实现一种简单 ...

  2. 最大似然估计_状态估计的基本概念(2)最大似然估计和最大后验估计

    (1)最大似然估计ML和最大后验估计MAP 最大似然估计量 非贝叶斯方法通常是最大化似然函数: 其中 被称为 的最大似然估计量,它是 的函数. 最大后验估计量 估计随机参数的通常方法是最大化后验分布函 ...

  3. 机器学习的MLE和MAP:最大似然估计和最大后验估计

    讲的不错的1 讲的不错的2

  4. 贝叶斯、先验估计、后验估计、最大似然估计、最大后验估计

    有关这几个概率论中概念讲的比较好的一个博客: https://blog.csdn.net/qq_23947237/article/details/78265026

  5. 机器学习-白板推导系列(一)-绪论(机器学习的MLE(最大似然估计)和MAP(最大后验估计))

    频率学派 - Frequentist - Maximum Likelihood Estimation (MLE,最大似然估计) 贝叶斯学派 - Bayesian - Maximum A Posteri ...

  6. 基础:常见的参数估计方法——MLE和MAP

    抽样.样本数据 -->观察数据趋势 -->选择模型 -->模型参数估计 -->假设检验 类别 名称 核心函数 求解目标 点估计 最小二乘法 模型参数的误差平方和函数 求偏导数, ...

  7. 最大似然估计、最大后验概率估计和贝叶斯估计

      本内容主要介绍概率论与统计学相关基础知识,主要涉及 联合概率.边缘概率和条件概率:贝叶斯公式.先验概率.后验概率和似然函数:最大似然估计.最大后验概率估计和贝叶斯估计 等.为机器学习中的贝叶斯分类 ...

  8. 最小二乘与最大似然估计之间的关系

    最小二乘与最大似然估计之间的关系 1.结论 测量误差(测量)服从高斯分布的情况下, 最小二乘法等价于极大似然估计. 2.最大似然估计概念       最大似然估计就是通过求解最大的(1)式得到可能性最 ...

  9. 最大似然估计与最大后验概率的区别与联系

    最大似然估计(MLE): 最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:"模型已定,参数未知".简单而言,假设我们要统计全国人口的身高,首先假设这个身高服从服从正态分 ...

  10. logit模型应用实例_最大似然估计(上)——离散选择模型之十

    原创文章,如需转载请联系作者! 希望这篇文章能讲清楚什么是"最大似然估计". 通过前文的推理,我们已经得到了二项Probit和二项Logit的模型表达式.在二项Probit模型中, ...

最新文章

  1. Ubuntu终端远程工具
  2. 图表+笔记-python语言-第5章:数字/5.11 位操作
  3. 数据库设计中的9大常见错误
  4. 卡常神器——register 与 快速读入输出
  5. [leetcode] 21.合并两个有序链表
  6. java文件选择器_java中文件选择器JFileChooser的用法
  7. 如何安装和使用Android夜神模拟器
  8. python使用BeautifulSoup的prettify功能来处理HTML文档,之后使用Levenshtein编辑距离计算文档间的相似度
  9. asp.net网上订餐系统
  10. 用友-凭证打印行数如何调整
  11. Is your horseshoe on the other hoof?
  12. 计算机机械硬盘寿命,机械硬盘的寿命
  13. 【笔记】用函数实现折半查找
  14. 美通社企业新闻汇总 | 2019.3.1 | 东京是亚洲商务休闲最佳目的地;贺恩霆担任赛诺菲中国区总裁...
  15. SQL Server中的日期和时间:DATEADD()
  16. Transitive attribute传递属性
  17. 04【结构面】 面试之结构面,什么是结构面?结构面的准备,常见问题分析?
  18. 吹牛前请看这篇:“智能”物流 VS “智慧”物流
  19. 教老婆学java系列之奇妙的数据结构三
  20. JDBC插入数据后返回新数据id

热门文章

  1. 快读与快输(读入优化与输出优化、QIO优化)
  2. 【微信开发】定制消息推送
  3. 刻意练习:Python基础 -- Task07. 文件与文件系统
  4. python超实用基础一览通
  5. 苹果软件上app注意事项
  6. 笔记本和打印机不在一个网段,无线连接打印机的方法
  7. 使用postman测试上传图片接口
  8. java wgs84 百度坐标_javascript 实现wgs84 坐标转百度坐标
  9. (很容易懂,你把代码复制粘贴即可解决问题)高等代数/线性代数-基于python实现矩阵法求解齐次方程组
  10. 人类有两大学习能力,即记忆力和理解力