极大似然估计&最大后验概率估计
https://guangchun.wordpress.com/2011/10/13/ml-bayes-map/
http://www.mi.fu-berlin.de/wiki/pub/ABI/Genomics12/MLvsMAP.pdf
经验风险最小化:
\min \limits_{f\in \mathcal{F}} \frac{1}{N} \sum_{i=1}^{N} L(y_i,f(x_i)) |
结构风险最小化:
\min \limits_{f\in \mathcal{F}} \frac{1}{N} \sum_{i=1}^{N} L(y_i,f(x_i))+\lambda J(f) |
李航博士《统计学习方法》中第一章第九页中有两个论断
1 当模型是条件概率分布,损失函数是对数损失函数时,经验风险最小化就等价于极大似然估计。
2 当模型是条件概率分布、损失函数是对数损失函数、模型复杂度由模型的先验概率表示时,结构风险最小化就等价于最大后验概率估计
证明论断1:
极大似然估计:对于观测的随机变量D,其总体分布为
P(D;\theta) |
S为抽样得到的样本,
S=(s_1,s_2,...,s_N) |
样本是独立同分布得到的,因此样本的分布为
L(\theta) = \prod_{i=1}^{N} P(s_i;\theta) |
当
S=(s_1,s_2,...,s_N) |
\theta |
的函数。
\theta |
的“似然程度”,因此上式被叫做似然函数。用似然程度最大的那个
\theta_{*} |
去做
\theta |
的估计,这种估计方法叫做"极大似然估计"。取对数,极大平均似然函数为:
\max log L(\theta)=\max \frac{1}{N}\sum_{i=1}^{N}log P(s_i;\theta) |
上式等价于
\min -log L(\theta)=\min \frac{1}{N}\sum_{i=1}^{N} -log P(s_i;\theta) |
在统计学习中,S就是样本,
s_{i}=(x_i,y_i).x_i\mbox{为特征,}y_i{为标签} |
当模型是条件概率分布时,则
P(s_i;\theta)=P(y_i|x_i;\theta) |
\min -log L(\theta)=\min \frac{1}{N}\sum_{i=1}^{N} -log P(y_i|x_i;\theta) -----(1) |
当损失函数是对数损失函数(
L(Y,P(Y|X)) = -log P(Y|X) |
),则最小化经验风险的公式为
\min \limits_{f\in \mathcal{F}} \frac{1}{N} \sum_{i=1}^{N} L(y_i,f(x_i)) |
对比(1)(2)两个公式,论断1得证。
证明论断2
极大似然估计将
\theta |
看做是一个确定但未知的常量,而贝叶斯学派则认为
\theta |
可以看做一个随机变量,从这个视角出发可得到条件概率
P(\theta|S) |
因此利用贝叶斯公式得到
P(\theta|S)=\frac{P(S|\theta)P(\theta)}{P(S)} |
最大后验概率估计是要最大化
P(\theta|S) |
这个后验概率,因此
\max P(\theta|S) = \max P(S|\theta)P(\theta) |
上式与极大似然估计相比,只多了个
P(\theta) |
,左边和极大似然估计一样,因此对左边取对数处理求平均似然最大
\max \frac{1}{N}\sum_{i=1}^{N} log P(s_i|\theta)+log P(\theta) |
当模型是条件概率分布时,则
P(s_i;\theta)=P(y_i|x_i;\theta) |
因此,
\max \frac{1}{N}\sum_{i=1}^{N} log P(y_i|x_i;\theta)+log P(\theta) |
取负号,转换为
\min \frac{1}{N}\sum_{i=1}^{N} -log P(y_i|x_i;\theta)-log P(\theta) -----(3) |
当损失函数是对数损失函数(
L(Y,P(Y|X)) = -log P(Y|X) |
),模型是条件概率分布时,
结构风险最小化公式
\min \limits_{f\in F} \frac{1}{N} \sum_{i=1}^{N} L(y_i,f(x_i))+\lambda J(f) |
\lambda J(f) = -log P(\theta) |
两者等价,论断2得证。
(汉武提问,
\lambda |
在(4)中没有出现,其实
\lambda |
为超参,在模型中一般首先指定,如果为1/2 , 则
-1/2*2log P(\theta) |
), 所以无论怎么取,都可以得到对应的使得等价。
极大似然估计&最大后验概率估计的更多相关文章
- [白话解析] 深入浅出 极大似然估计 & 极大后验概率估计
[白话解析] 深入浅出极大似然估计 & 极大后验概率估计 0x00 摘要 本文在少用数学公式的情况下,尽量仅依靠感性直觉的思考来讲解 极大似然估计 & 极大后验概率估计,并且从名著中找 ...
- (转载)极大似然估计&最大后验概率估计
前言 不知看过多少次极大似然估计与最大后验概率估计的区别,但还是傻傻分不清楚.或是当时道行太浅,或是当时积累不够. 这次重游机器学习之路,看到李航老师<统计学习方法>中第一章关于经验风险最 ...
- 极大似然估计、贝叶斯估计、EM算法
参考文献:http://blog.csdn.net/zouxy09/article/details/8537620 极大似然估计 已知样本满足某种概率分布,但是其中具体的参数不清楚,极大似然估计估计就 ...
- 机器学习(二十五)— 极大似然估计(MLE)、贝叶斯估计、最大后验概率估计(MAP)区别
最大似然估计(Maximum likelihood estimation, 简称MLE)和最大后验概率估计(Maximum aposteriori estimation, 简称MAP)是很常用的两种参 ...
- 详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解
转载声明:本文为转载文章,发表于nebulaf91的csdn博客.欢迎转载,但请务必保留本信息,注明文章出处. 原文作者: nebulaf91 原文原始地址:http://blog.csdn.net/ ...
- 4.机器学习——统计学习三要素与最大似然估计、最大后验概率估计及L1、L2正则化
1.前言 之前我一直对于“最大似然估计”犯迷糊,今天在看了陶轻松.忆臻.nebulaf91等人的博客以及李航老师的<统计学习方法>后,豁然开朗,于是在此记下一些心得体会. “最大似然估计” ...
- 【机器学习基本理论】详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解
[机器学习基本理论]详解最大似然估计(MLE).最大后验概率估计(MAP),以及贝叶斯公式的理解 https://mp.csdn.net/postedit/81664644 最大似然估计(Maximu ...
- 浅议极大似然估计(MLE)背后的思想原理
1. 概率思想与归纳思想 0x1:归纳推理思想 所谓归纳推理思想,即是由某类事物的部分对象具有某些特征,推出该类事物的全部对象都具有这些特征的推理.抽象地来说,由个别事实概括出一般结论的推理称为归纳推 ...
- MLE极大似然估计和EM最大期望算法
机器学习十大算法之一:EM算法.能评得上十大之一,让人听起来觉得挺NB的.什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题.神为什么是神,因为神能做很多人做不了的事.那么EM ...
随机推荐
- 思考 ”前端开发人员都在关注的 GitHub 资源“
点这里 原文: 资源 免费的计算机编程类中文书籍 免费编程书籍 计算机科学论文 codeparkshare Python初学者书籍.视频.资料.社区推荐 Python资料汇总 app应用推荐 码农周刊 ...
- Eclipse环境下配置spket中ExtJS提示
使用eclipse编写extjs时,一定会用到spket这个插件,spket可以单独当作ide使用,也可以当作eclipse插件使用,我这里是当作eclipse的插件使用的,下面来一步步图解说明如何配 ...
- 几点基于Web日志的Webshell检测思路
http://www.open-open.com/lib/view/open1456751673359.html
- JS之DOM编程
为什么学dom编程? 通过dom编程,我们可以写出各种网页游戏 dom编程也是我们学习ajax技术的基础,所以我们必需掌握好dom编程. dom编程简介 DOM=Document Object Mo ...
- WebSocket 是什么原理?为什么可以实现持久连接
你可以把 WebSocket 看成是 HTTP 协议为了支持长连接所打的一个大补丁,它和 HTTP 有一些共性,是为了解决 HTTP 本身无法解决的某些问题而做出的一个改良设计.在以前 HTTP 协议 ...
- mysql变量使用总结
set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...
- Java多线程-线程的调度(合并)
线程的合并的含义就是将几个并行线程的线程合并为一个单线程执行,应用场景是当一个线程必须等待另一个线程执行完毕才能执行时可以使用join方法. join为非静态方法,定义如下:void join(): ...
- Spring笔记——配置Hibernate框架事务
原文:http://www.iteye.com/topic/1123347 Spring配置文件中关于事务配置总是由三个组成部分,DataSource.TransactionManager和代理机制这 ...
- 【原创】Android 4.4前后版本读取图库图片方式的变化
Android 4.4前后版本读取图库图片方式的变化 本文讲述Android 4.4(KitKat)前后访问图库以及访问后通过图片路径读取图片的变化 Android 4.4(KitKat)以前 ...
- ASP.NET 在IIS7.5下自定义404错误页面的方法
.net 4.0 本机调试时一切正常,配置如下 <customErrors redirectMode="ResponseRewrite" mode="On& ...