本文为量子金服原创文章,转载须授权

概率就是上帝在掷筛子——在18世纪,这是神职人员对概率的理解。为了证明上帝的存在,英国业余数学家托马斯·贝叶斯发明了概率统计学原理,他发现了古典统计学中的一些缺点,并在统计当中引入了一个主观因素(即先验概率)形成了自己的“贝叶斯统计学”

然而他的理论在当时并不受认可。当然贝叶斯直到去世都没有印证上帝的存在,他的观点简单平淡:“用客观的新信息更新我们最初关于某个事物的信念后,我们就会得到一个新的、改进了的信念。” 这个研究成果,直到他死后的两年才于1763年由他的朋友理查德·普莱斯帮助发表。1774年,法国数学家皮埃尔-西蒙·拉普拉斯才给出了我们现在所用的贝叶斯公式的表达。

贝叶斯公式

所谓的贝叶斯定理源于他生前为解决一个“逆向概率”问题写的一篇文章:“假设袋子里有白球和黑球,我们事先并不知道袋子里面黑白球的比例,而是闭着眼摸出一个(或好几个)球,观察这些取出来的球的颜色之后,我们可以就此对袋子里面的黑白球比例做出什么样的推测?”

贝叶斯定理实际上就是条件概率公式:设A,B是两个事件,且P(B)>0,则在事件B发生的条件下,事件A发生的条件概率(conditional probability)为:

P(A|B)=P(AB)/P(B)

P(A)是A的先验概率,之所以成为先验是因为它不考虑任何B的因素,P(B)同理;

P(A|B)实在B发生时A发生的条件概率,称坐A的后验概率,P(B|A)同理。

贝叶斯定理通俗地讲,就是当你不能确定某一个事件发生的概率时,你可以依靠与该时间本质属性相关的事件发生的概率去推测该事件发生的概率

贝叶斯公式是建立在条件概率的基础上寻找事件发生的原因(即大事件A已经发生的条件下,分割中的小事件Bi的概率),设B1,B2,...是样本空间Ω的一个划分,则对任一事件A(P(A)>0),有:

上式即为贝叶斯公式(Bayes formula),Bi 常被视为导致试验结果A发生的“原因”,P(Bi)(i=1,2,...)为先验概率;P(Bi|A)(i=1,2...)为后验概率。

通过联系A与B,计算从一个时间发生的情况下另一时间发生的概率,即从结果上溯到源头(逆向概率)。

贝叶斯定理与经典统计学推断方法截然不同,它建立在主观判断的基础上,使用者可以不需要客观证据,先估计一个值,然后根据实际结果不断修正,正式因为它的主观性太强,和注重客观事实研究的经典统计学背道而驰,最终连公式的发现者拉普拉斯都放弃了它,转投经典统计学。但随着计算机的发展,高速运算能力解决了贝叶斯定理所需的大量运算问题,它的威力才逐渐显现。

贝叶斯应用的经典案例

两个标志性的事件使贝叶斯方法渐渐受到学术界的重视:

一是联邦党人文集作者公案:哈佛大学统计学教授Fredrick Mosteller和统计学家David Wallance通过分析词汇在文章中出现的频率,来判定《联邦党人文集》中存在争议的12篇文章其作者到底是汉密尔顿还是麦迪逊。

一是天蝎号核潜艇搜救:数学家John Craven通过数学家、潜艇专家、海事搜救等各个领域的专家,按照他们的猜测评估某种情景出现的可能性,并根据贝叶斯公式得到了一张20英里海域的概率图:

每次寻找时,先挑选整个区域内潜艇存在概率值最高的一个格子进行搜索,如果没有发现,概率分布图会被“洗牌”一次,搜寻船只就会驶向新的“最可疑格子”进行搜索,经过几次搜索,潜艇果然被找到了。这种基于贝叶斯公式的方法在后来多次搜救实践中被成功应用,现在已经成为海难空难搜救的通行做法。

这两个案例是贝叶斯应用的经典案例,但是限于当时的技术水平,贝叶斯的应用困难重重,主要的阻力来自于大量的计算,如1787年发生的联邦党人文集作者公案,David Wallance找了100个哈佛大学的学生来帮助处理数据,学生们用最原始的方式,用打字机把《联邦党人文集》打出来,剪下每个单词,按照字母表顺序将单词分门别类地汇集在一起,《联邦党人文集》中,已经确定作者的73篇文章:汉密尔顿写了9.4万字,麦迪逊写了11.4万字,可以想象这项工程有多枯燥浩大,Fredrick Mosteller和David Wallance花了十年的时间,才给这件事画上了一个完美的句号。

接下来究竟在哪些方面的应用让贝叶斯大放异彩,人们又是如何应用它进行机器学习的?明天,笔者将继续为大家一一揭晓。

(未完待续)

上帝手中的骰子——无所不能的贝叶斯(上篇)相关推荐

  1. 机器学习 —— 浅谈贝叶斯和MCMC

    ‍‍Abstract:最近课业内的任务不是很多,又临近暑假了,就在网上搜了一些有关于机器学习和深度学习的课程进行学习.网上的资料非常繁多,很难甄别,我也是货比三家进行学习.这是这个系列的第一个笔记,是 ...

  2. 聊一聊贝叶斯和MCMC......

    作者 | 徐炎琨   来源 | 知乎问答   整理 | AI科技大本营 ‍‍这是这个笔记,是关于贝叶斯和MCMC一些数学原理的讲解和代码的实现,希望能够深入浅出,叙述的容易让人理解.- ▌浅谈贝叶斯 ...

  3. 贝叶斯 定理_蚂蚁骰子和贝叶斯定理

    贝叶斯 定理 We have so far solved a few algorithmic/coding problems asked in programming interviews acros ...

  4. 真理在缩水,还是上帝在掷骰子?

    最近在Google Reader中看见科学松鼠会有两篇文章被频繁分享,名为<真理在缩水--现代科学研究方法并不尽善尽美?>(上)与(下),下文简称<缩水>.文章很有意思,而实际 ...

  5. 德国坦克问题及频率学派与贝叶斯学派

    转载:Tony's blog: 德国坦克问题及频率学派与贝叶斯学派 (tonysh-thu.blogspot.com) 这是一个看起来很基础很简单的经典问题:假设所有的德国坦克是从1开始按自然数递增编 ...

  6. 用简单术语让你看到贝叶斯优化之美

    选自Medium 作者:Andre Ye 机器之心编译 编辑:Panda 贝叶斯优化是机器学习超参数优化的常用技术之一,本文不会使用艰深的数学论证,而是通过简单的术语带你领略贝叶斯优化之美. 假设有一 ...

  7. Stephen Wolfram专访Judea Pearl:从贝叶斯网络到元胞自动机

    导语 2022年人工智能与数学国际研讨会(ISAIM 2022)恰逢著名计算机科学家.贝叶斯网络之父 Judea Pearl 85岁生日,会议期间Mathematica创始人 Stephen Wolf ...

  8. 也谈压缩感知和贝叶斯大脑

    来源:科学网 压缩感知和人工智能都是当下很热很热的研究课题.不过许多论文数学论述高深莫测,加之一大堆各种千奇百怪的数学符号,不仅让人望而生畏,望而却步.笔者对希望用形象的比喻把问题大致轮廓讲清楚就好. ...

  9. Sklearn(v3)——朴素贝叶斯(3)

    多项式朴素贝叶斯MultinomialNB   from sklearn.preprocessing import MinMaxScaler from sklearn.naive_bayes impo ...

  10. NLP之TopicModel:朴素贝叶斯NB的先验概率之Dirichlet分布的应用

    NLP之TopicModel:朴素贝叶斯NB的先验概率之Dirichlet分布的应用 目录 1.Dirichlet骰子先验和后验分布的采样 2.稀疏Dirichlet先验的采样 1.Dirichlet ...

最新文章

  1. Oracle PL/SQL编程学习笔记:Merge方法的使用
  2. java 算法--洗牌算法
  3. asp.net性能优化
  4. MKcms4.4.3仿品优影视网站系统完整开源版自动采集可设置视频收费
  5. Vscode合并develop代码分支到master开发分支
  6. 关于“Unknown or unsupported command ‘install‘”问题解决的小结
  7. python怎么读_锋哥告诉你Python怎么读
  8. 三菱系统刀库乱刀处理_FANUC系统对圆盘式刀库现场操作及调试
  9. matlab 单相整流电路,基于MATLAB的单相桥式整流电路研究
  10. 大话spring~spring那些事
  11. 蓝桥杯Java组省赛备考经验分享
  12. 电脑如何打开软键盘,教大家Win10如何打开软键盘的方法
  13. JAVA网络协同办公自动化
  14. WindowManager LayoutParams 上
  15. SVG实例入门与动画实战
  16. 色卡矩形检测和颜色提取
  17. Vue el-table-column根据行数据添加button和修改对应数据and控制显示条件
  18. windows 防止屏保锁屏脚本工具
  19. 浏览器在线查看pdf文件 pdf.js的使用教程
  20. Gox语言中使用内存虚拟文件系统提升IO处理速度-GX43.1

热门文章

  1. python2和python3的编码区别
  2. 刷屏了!张一鸣6000字内部演讲:不依赖捷径,不轻言All-in(附全文)
  3. JVM 怎么判断对象已经死了?
  4. Java 面试题目最全集合1000+ 大放送,能答对70%就去BATJTMD
  5. 遍历一个List的几种方法
  6. 夺命雷公狗---微信开发18----删除自定义菜单
  7. iOS----创建静态库
  8. Liferay的架构:缓存(第一部分)
  9. static数据的初始化
  10. Windows Phone 程序发布过程