机器学习基础篇——最大后验概率
最大后验估计(MAP)
最大后验估计是根据经验数据获得对难以观察的量的点估计。与最大似然估计类似,最大区别是,最大后验估计的融入了要估计量的先验分布在其中。故最大后验估计可以看做规则化的最大似然估计。
首先,回顾上篇中的最大似然估计,假设x为独立同分布的采样,θ为模型参数,f为所使用的模型。那么最大似然估计可以表示为:
现在,假设θ的先验分布为g。通过贝叶斯理论,对于θ的后验分布如下式所示:
(贝叶斯公式:,公式中,事件Bi的概率为P(Bi),事件Bi已发生条件下事件A的概率为P(A│Bi),事件A发生条件下事件Bi的概率为P(Bi│A)。)
最后验分布的目标为:
注:最大后验估计可以看做贝叶斯估计的一种特定形式。
举例来说:
假设有五个袋子,各袋中都有无限量的饼干(樱桃口味或柠檬口味),已知五个袋子中两种口味的比例分别是
樱桃 100%
樱桃 75% + 柠檬 25%
樱桃 50% + 柠檬 50%
樱桃 25% + 柠檬 75%
柠檬 100%
如果只有如上所述条件,那问从同一个袋子中连续拿到2个柠檬饼干,那么这个袋子最有可能是上述五个的哪一个?
我们首先采用最大似然估计来解这个问题,写出似然函数。假设从袋子中能拿出柠檬饼干的概率为p(我们通过这个概率p来确定是从哪个袋子中拿出来的),则似然函数可以写作
由于p的取值是一个离散值,即上面描述中的0,25%,50%,75%,1。我们只需要评估一下这五个值哪个值使得似然函数最大即可,得到为袋子5。这里便是最大似然估计的结果。
上述最大似然估计有一个问题,就是没有考虑到模型本身的概率分布,下面我们扩展这个饼干的问题。
假设拿到袋子1或5的机率都是0.1,拿到2或4的机率都是0.2,拿到3的机率是0.4,那同样上述问题的da'an呢?这个时候就变MAP了。我们根据公式
写出我们的MAP函数。
根据题意的描述可知,p的取值分别为0,25%,50%,75%,1,g的取值分别为0.1,0.2,0.4,0.2,0.1.分别计算出MAP函数的结果为:0,0.0125,0.125,0.28125,0.1.由上可知,通过MAP估计可得结果是从第四个袋子中取得的最高。
上述都是离散的变量,那么连续的变量呢?假设为独立同分布的(正态分布),μ有一个先验的概率分布为。那么我们想根据来找到μ的最大后验概率。根据前面的描述,写出MAP函数为:
此时我们在两边取对数可知。所求上式的最大值可以等同于求
的最小值。求导可得所求的μ为
以上便是对于连续变量的MAP求解的过程。
在MAP中我们应注意的是:
MAP与MLE最大区别是MAP中加入了模型参数本身的概率分布,或者说。MLE中认为模型参数本身的概率的是均匀的,即该概率为一个固定值。
参考博客:
http://www.cnblogs.com/liliu/archive/2010/11/24/1886110.html
机器学习基础篇——最大后验概率相关推荐
- 计算机视觉面试宝典--深度学习机器学习基础篇(四)
计算机视觉面试宝典–深度学习机器学习基础篇(四) 本篇主要包含SVM支持向量机.K-Means均值以及机器学习相关常考内容等相关面试经验. SVM-支持向量机 支持向量机(support vector ...
- Python机器学习基础篇三《无监督学习与预处理》
前言 前期回顾: Python机器学习基础篇二<为什么用Python进行机器学习> 上面这篇里面写了文本和序列相关. 我们要讨论的第二种机器学习算法是无监督学习算法.无监督学习包括没有已知 ...
- 机器学习基础篇(四)——交叉验证
机器学习基础篇(四)--交叉验证 一.概述 交叉验证是在机器学习建立模型和验证模型参数时常用的办法.顾名思义,交叉验证就是重复的使用数据,把得到的样本数据进行切分,组合为不同的训练集和测试集,用训练集 ...
- Python机器学习基础篇二《监督学习》
前言 前期回顾: Python机器学习基础篇一<为什么用Python进行机器学习> 前面说过,监督学习是最常用也是最成功的机器学习类型之一.本章将会详细介绍监督学 习,并解释几种常用的监督 ...
- 机器学习基础篇(十一)——主成分分析法
机器学习基础篇(十一)--主成分分析法 一.简介 当我们对含有多个变量的数据进行观测时,我们会收集大量的数据然后分析他们.大样本的数据集固然提供了丰富的信息,但是在一定程度上增加了问题的复杂性. 如果 ...
- 机器学习基础——先验概率、后验概率和似然估计的讲解;频率派和贝叶斯派之分;以及MLE和MAP方法的解析
1.先验概率 假定 B 1 , B 2 , - , B n B_1,B_2,\ldots ,B_n B1,B2,-,Bn是某个过程所有可能的前提条件,也就是 B 1 , B 2 , - , B ...
- 牛客网错题集---机器学习基础篇
题目一 支持向量机(Support Vector Machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类(binary classification ...
- ML与math:机器学习与高等数学基础概念、代码实现、案例应用之详细攻略——基础篇
ML与math:机器学习与高等数学基础概念.代码实现.案例应用之详细攻略--基础篇 目录 一.ML与高等数学 0.基础数学 1.导数.方向导数.梯度 1.1.概念简介 1.2.代码实现 2.Taylo ...
- 从零开始掌握Python机器学习:七步教程 基础篇
前言 「开始」往往是最难的,尤其是当选择太多的时候,一个人往往很难下定决定做出选择.本教程的目的是帮助几乎没有 Python 机器学习背景的新手成长为知识渊博的实践者,而且这个过程中仅需要使用免费的材 ...
最新文章
- 【学习笔记】系统观核心管理理论
- 以太坊geth结构解析和源码分析
- jetty NoSuchFieldError: MAX_INACTIVE_MINUTES
- 对软件工程这门课的收获与总结
- 【数据结构与算法】二叉查找树的Java实现
- Python实现HTTP服务器(一)
- (1)散列表(哈希表)的定义
- Android入门学习3
- mysql 出现ERROR 2002 (HY000): ....错误通用解决方法
- 南瑞科技服务器型号,南瑞--NSC通讯概述
- 如何配置JLINK给STM32单片机下载程序
- 4G5G学习过程中整理的专业名词的符号简称
- opencv python 的基本操作案例(一) 记录,可查看
- Flask开发 导入flask_uploads包时提示“IMPORTERROR: CANNOT IMPORT NAME ‘SECURE_FILENAME‘ FROM ‘WERKZEUG‘“
- 基于SpringBoot的框架SOFABoot,青出于蓝而胜于蓝
- 计算机学win7画图,详解使用画图工具的win7中的操作步骤
- 【快速简单登录认证】SpringBoot使用Sa-Token-Quick-Login插件快速登录认证
- 如何说服导师放你去实习?
- 热插拔48块硬盘服务器,中云网眼WEM-SAN100/48B48盘位网络存储设备IP-SAN
- 关于Jboot读取不到配置文件