有一枚硬币(不知道它是否公平),假如抛了三次,三次都是“花”:

能够说明它两面都是“花”吗?

1 贝叶斯推断

按照传统的算法,抛了三次得到三次“花”,那么“花”的概率应该是:

但是抛三次实在太少了,完全有可能是运气问题。我们应该怎么办?

托马斯·贝叶斯(1702-1761),18世纪英国数学家,1742年成为英国皇家学会会员。

贝叶斯认为在实验之前,应根据不同的情况对硬币有所假设。不同的假设会得到不同的推断。

比如和滑不溜手的韦小宝玩。韦小宝可能拿出各种做过手脚的硬币,让我们猜不透,只能假设对硬币一无所知。这种假设之下,我们就只能根据实验结果来猜测。

因此,实验结果是“扔三次,三次花”,倾向于认为韦小宝有可能作弊:

大侠陈近南用的可能是公平硬币:

而憨坏的多隆,真的有可能用两面“花”来和你玩:

各种假设称为先验分布,结合刚才“扔三次,三次花”的实验数据,推断出硬币的后验分布,这就是贝叶斯推断:

这里补充一下,可能大家觉得再多抛几次硬币就可以了,何必弄什么贝叶斯推断。不过现实生活中有一些事件不是能够多“抛”几次的,比如地震、彗星撞击地球等等。这里只是借着硬币来讨论问题。

 分布

那么问题来了,“先验分布”,“后验分布”用数学怎么表示:

对于扔硬币, 分布非常适合用来完成这个任务。

2.1 先验分布

 分布简记为(这一节里面的所有细节会在后面给出):

根据 参数的不同,形态各异:

这个特性非常适合用来做先验分布。比如,在韦小宝面前,我们对硬币一无所知。

贝叶斯说一无所知也就是意味着任何概率都是一样的,都是有可能的,所以选用均匀分布(所谓的无信息先验,可以参看这篇文章):

 正好就是均匀分布:

正直的陈近南,可能用的是公平硬币,也就是说概率在0、1之间(0表示“字”,1表示“花”), 可以表示这样的分布:

而憨坏的多隆,可能用了两面花,也就是说概率可能集中到1附近, 可以表示这样的分布:

也就是说可以用 分布来模拟各种先验分布:

  • 一无所知:
  • 公平硬币:
  • 两面花:

2.2 后验分布

 分布来模拟扔硬币的先验分布之后,通过贝叶斯推断,得到的后验分布依然是 分布:

具体到这里:

再具体到韦小宝的情况就是:

其中,用 来表示实验数据,意思是3次花,0次字( 就是2次花,1次字)。

图像上的变化就是:

可以看到,作弊的可能性还是比较大的。

陈近南的情况:

结合实验数据之后,图像的中心从0.5往0.6方向移动了,作弊可能性有所增加,不过总体来看应该还是公平硬币的可能性大。

多隆的情况:

更向1集中,作弊的可能性非常高。

3 代数细节

3.1 贝叶斯推断

贝叶斯推断:

的应用到二项式分布的数学细节如下。假设实验数据 服从二项分布:

上面的式子根据贝叶斯定理(离散贝叶斯可以参看怎样用非数学语言讲解贝叶斯定理(Bayes theorem)?,连续贝叶斯可以参看这里)可以表示为:

其中 为“花”的次数。分母与实验数据无关,可以视作常数:

因此,写成下面这样更容易看清楚重点(其中 表示两者之间成比例):

3.2  分布

 长成这个样子:

其中, 为 函数。

随着 的变换, 分布形态各异:

3.3 共轭先验

对于二项式分布,用 分布作为先验分布,通过贝叶斯推断之后,后验分布依然是 分布:

这种特性称为共轭先验

并且:

关于这点的证明请参看这里,需要***。

文章最新版本在(有可能会有后续更新):如何理解贝叶斯推断,beta分布?

如何通俗理解贝叶斯推断与beta分布?的更多相关文章

  1. (main)贝叶斯统计 | 贝叶斯定理 | 贝叶斯推断 | 贝叶斯线性回归 | Bayes' Theorem

    2019年08月31日更新 看了一篇发在NM上的文章才又明白了贝叶斯方法的重要性和普适性,结合目前最火的DL,会有意想不到的结果. 目前一些最直觉性的理解: 概率的核心就是可能性空间一定,三体世界不会 ...

  2. 贝叶斯推断之最大后验概率(MAP)

    贝叶斯推断之最大后验概率(MAP) 本文详细记录贝叶斯后验概率分布的数学原理,基于贝叶斯后验概率实现一个二分类问题,谈谈我对贝叶斯推断的理解. 1. 二分类问题 给定N个样本的数据集,用\(X\)来表 ...

  3. 贝叶斯推断 && 概率编程初探

    1. 写在之前的话 0x1:贝叶斯推断的思想 我们从一个例子开始我们本文的讨论.小明是一个编程老手,但是依然坚信bug仍有可能在代码中存在.于是,在实现了一段特别难的算法之后,他开始决定先来一个简单的 ...

  4. 概率编程:《贝叶斯方法概率编程与贝叶斯推断》中文PDF+英文PDF+代码

    贝叶斯推理的方法非常自然和极其强大.然而,大多数图书讨论贝叶斯推理,依赖于非常复杂的数学分析和人工的例子,使没有强大数学背景的人无法接触.<贝叶斯方法概率编程与贝叶斯推断>从编程.计算的角 ...

  5. tf-idf、朴素贝叶斯的短文本分类简述

    朴素贝叶斯分类器(Naïve Bayes classifier)是一种相当简单常见但是又相当有效的分类算法,在监督学习领域有着很重要的应用.朴素贝叶斯是建立在“全概率公式”的基础下的,由已知的尽可能多 ...

  6. LDA概率图模型之贝叶斯理解

    贝叶斯.概率分布与机器学习 转自:http://www.cnblogs.com/LeftNotEasy/archive/2010/09/27/1837163.html  本文由LeftNotEasy原 ...

  7. [机器学习] 分类 --- Naive Bayes(朴素贝叶斯)

    Naive Bayes-朴素贝叶斯 Bayes' theorem(贝叶斯法则) 在概率论和统计学中,Bayes' theorem(贝叶斯法则)根据事件的先验知识描述事件的概率.贝叶斯法则表达式如下所示 ...

  8. ML(3): 贝叶斯方法

    对于分类问题,我们每个人每天都在执行分类操作,只是我们没有意识到罢了.例如,当你看到一个陌生人,你的脑子下意识判断TA是男是女:你可能经常会走在路上对身旁的朋友说“这个人一看就很有钱.那边有个非主流” ...

  9. 基于贝叶斯网(Bayes Netword)图模型的应用实践初探

    1. 贝叶斯网理论部分 笔者在另一篇文章中对贝叶斯网的理论部分进行了总结,在本文中,我们重点关注其在具体场景里的应用. 2. 从概率预测问题说起 0x1:条件概率预测模型之困 我们知道,朴素贝叶斯分类 ...

随机推荐

  1. JavaScript互斥锁案例

    朋友今天问起来关于JS中多个函数共享同一个全局变量时,顺序调用执行的函数,前者修改了全局变量值,后调用的函数访问时却为undefined. 前不久开发项目过程中,队友也遇到了同样的问题,索性就写份博客 ...

  2. rman基础知识理解(一)

    rman用于对数据库的备份和恢复. 他的命令主要分成两大类:独立命令和批处理命令: 独立命令只能在rman的提示符下执行,主要的命令有: CONNECT CONFIGURE CREATE CATALO ...

  3. Hbuilder软件打包简述

    Hbuilder打包简述: : Hbuilder安装打包Android不需要任何证书可以正常打包. : ios打包需要.mobileprovision证书和P12文件.(.mobileprovisio ...

  4. 数组的定义和使用,理解多维数组和Array类

    数组的作用 在执行程序的过程中,通常会需要存储大量数据.如果只有少量数据,那么通过声明变量,存储到变量中即可.但当我们的数据是20个.40个甚至是100以上时,就意味着需要声明很多变量,这是不现实的, ...

  5. 底层文件I/O操作中read()函数的缓存问题

    最近在学习Linux过程中看到文件I/O操作这里时,文件I/O操作的系统调用涉及的5个函数:open(),read(),write(),lseek(),close().在一开始就阐明这些函数的特点是不 ...

  6. Linux基础-4.正文处理命令及tar命令

    1.使用cat命令进行文件的纵向合并 1)掌握使用cat命令的纵向合并 a)例如:使用cat命令将test1.file1.txt和file2这三个文件纵向合并为file文件的命令为: cat test ...

  7. echo、print、print_r、var_dump

    echo(): 可以一次输出多个值,多个值之间用逗号分隔.echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用. print(): 函数pri ...

  8. Qt界面编程基本操作

    Qt界面编程基本操作 了解基本代码构成 类widget的头文件widget.h如下: #ifndef WIDGET_H #define WIDGET_H #include <QWidget> ...

  9. pci枚举初始化部分(2)

    1.2.8判断pcie设备是否支持雷电技术 Intel具有一种基于Thunderbolt技术的PCIE变体,它结合了DisplayPort和PCIe协议,与Mini DisplayPort兼容. Th ...

  10. 网站sql注入漏洞修复方案之metinfo 6.1.0系列

    近日,我们SINE安全对metinfo进行网站安全检测发现,metinfo米拓建站系统存在高危的sql注入漏洞,攻击者可以利用该漏洞对网站的代码进行sql注入攻击,伪造恶意的sql非法语句,对网站的数 ...