在阅读《小心,逻辑思维的陷阱》一书中,有两个故事引起了我的注意。不是故事本身如何神奇,而是第一次知道了平凡而又神奇的贝叶斯方法。
1. 贝叶斯方法与空难搜索
在1966年,美国的一架轰炸机在西班牙上空进行空中加油的时候和加油机意外碰撞,导致轰炸机和加油机均起火坠毁。更严重的是,当时轰炸机上带着一枚氢弹,如果这颗氢弹发生什么意外,后果不堪设想。
美国立刻从国内调集了包括多位专家在内的搜索部队前往现场,搜寻那颗氢弹。但是残骸散落的范围非常大,而且没人知道当时氢弹是如何储存在轰炸机上的,也不知道氢弹是怎么从轰炸机上脱离的。还要考虑氢弹上的两个降落伞各自打开的概率是多少,当时的风速和方向是怎样的,氢弹落到地上之后有可能被埋到土里,等等。
因此,搜寻队一时束手无策,不知道从何处搜起。
最后,在这批专家中,有一位数学家提出的,也不知道氢弹是怎么从轰炸机上脱离的。还要考虑氢弹上的两个降落伞各自打开的概率是多少,当时的风速和方向是怎样的,氢弹落到地上之后有可能被埋到土里,等等。因此,搜寻队一时束手无策,不知道从何处搜起。
最后,在这批专家中,有一位数学家提出了自己的搜寻方案。
他先把整个残骸散落的区域划分成很多小方格,然后他召集了各方面的专家。这些专家都有自己擅长的领域,他们有的比较了解轰炸机的结构,有的是氢弹专家,有的是流体力学家,有的是专门研究爆炸动力学的......这位数学家要他们每人做出自己的假设,想象出各种可能的情境,然后在各种情境下,估计氢弹落在各个小方格里的概率。这些专家各自的估计结果综合到一起加权平均后,就得到了一张氢弹位置的概率图——每一个小方格都有不同的概率值。
然后,搜索队根据这张概率图开始搜索。他们从概率最高的格子开始搜索,一个格子搜索完后,剩下的格子的概率就会进行更新,然后接着搜索其中概率最高的。
最后,氢弹很快就找到了。
2. 贝叶斯方法与海难搜索
两年后,美国海军一艘核潜艇因为鱼雷事故在大西洋某个海域失踪了,潜艇和艇上的99名海军官兵全部杳无音信。
为了寻找这艘核潜艇的下落,美国海军进行了大规模的搜索,但搜救队对失事时潜艇航行的速度及方向、爆炸冲击力的大小及方向、爆炸时潜艇方向舵的指向等等一概不知,事发时深海海流的流向、流速也只能估计,所以很难确定潜艇残骸的最终位置。要在这么大的深海范围内寻找到这艘潜艇,几乎是不可能的。
这时,人们想起了上次组织寻找丢失氢弹的数学家。
这位数学家和搜索氢弹的时候一样,他先是召集了相关领域的专家,让他们想象各种可能发生的情况,并让他们按照自己的经验判断各种可能的概率。最后,这片海域被划分成很多小格子,每个格子都有一个初步的潜艇在这个格子里的概率。搜救队每次寻找时,都会挑选整个区域内概率值最高的格子进行搜索,如果没有发现,就会按照概率规律重新计算剩下的格子的概率,搜寻船只就会驶向新的概率最高的格子进行搜索。
海军人员一开始凭经验搜寻了几个月都一无所获,后来使用了数学家的方法后,仅仅搜索数次,就在爆炸点西南方的海底找到失事潜艇。
这种通过概率计算来提高认识本体真相效率的方法叫“贝叶斯方法”,现在已广泛应用于各种领域,特别是与人工智能相关的技术领域。
3.贝叶斯方法的前世今生
出于强烈的好奇心,以下是通过度娘找来的相关贝叶斯方法的相关知识:
贝叶斯定理:P(A|B) = P(B|A) * P(A)/P(B)
用语言解释就是:在B出现的前提下,A出现的概率等于A和B都出现的概率除以B出现的概率。
换句话说就是后验概率和先验概率的关系。
A例子
假设:目前的全集是一个小学的小学一年级学生,A指代“穿白袜子”,B指代“是男生”。
这个小学一年级一共100人,其中有男生30人,穿白袜子的人数一共有20个,这20个人里面,有5个是男生。那么请问,男生里面穿白袜子的人的出现概率为多少?
这不是废话嘛,一共30个男生,5个穿白袜子,出现概率是5/30=1/6啊!用得着贝叶斯公式吗?!
如果已经把人数都告诉你了,当然没必要算什么先后验概率,但是先不告诉你人数,只告诉你:
这个小学一年级学生里面,男生的出现概率是0.3 —— P(B);
穿白袜子的人的出现概率是0.2 —— P(A);
穿白袜子的人是男生这件事出现的概率是0.25 —— P(B|A)。
请问你,一个人是男生又穿白袜子的出现概率 —— P(A|B)是多少?
这个时候就该公式出场啦:P(A|B) = P(B|A) * P(A)/P(B) ==> P(A|B) = 0.25 * 0.2 / 0.3 = 1/6
B例子
明明人数都知道了,为什么还要绕个弯算概率,那么请把场景从一个小学的一年级转换为某个大饭店的门口,我们根据以往数据,可以计算出:
所有来吃饭的所有客人中,会有10%的人喝酒—— P(B),
所有客人中,会有20%的人驾车前来—— P(A),
开车来的客人中,会有5%喝酒—— P(B|A)。
那么请问,在这个饭店喝过酒的人里,仍然会开车的比例—— P(A|B)是多少?
P(A|B) = P(B|A) * P(A)/P(B) ==> P(A|B) = 5% * 20% / 10% = 10%
所谓的贝叶斯方法源于托马斯·贝叶斯(Thomas Bayes)生前为解决一个“逆概”问题写的一篇文章,而这篇文章是在他死后才由他的一位朋友发表出来的。
在贝叶斯写这篇文章之前,人们已经能够计算“正向概率”,如“假设袋子里面有N个白球,M个黑球,你伸手进去摸一把,摸出黑球的概率是多大”。而一个自然而然的问题是反过来:“如果我们事先并不知道袋子里面黑白球的比例,而是闭着眼睛摸出一个(或好几个)球,观察这些取出来的球的颜色之后,那么我们可以就此对袋子里面的黑白球的比例作出什么样的推测”。这个问题,就是所谓的逆概问题。
实际上,贝叶斯当时的论文只是对这个问题的一个直接的求解尝试,并不清楚他当时是不是已经意识到这里面包含着的深刻的思想。然而后来,贝叶斯方法席卷了概率论,并将应用延伸到各个问题领域,所有需要作出概率预测的地方都可以见到贝叶斯方法的影子,特别地,贝叶斯是机器学习的核心方法之一。
人工智能研究者,包括Google自动驾驶汽车的设计者,使用贝叶斯软件帮助及其识别模式并作出决策。根据一位流行的贝叶斯理论历史写作者Sharon Bertsch McGrayne所说,贝叶斯程序“挑选出电子邮件中的垃圾邮件,评估药物和国土安全风险以及从其他东西中破译DNA。”在网站Edge.org中,物理学家John Mather为贝叶斯机器可能已经足够聪明去“淘汰”人类而着急。
人们学习新的概念,往往能从单一的案例中学习,而机器学习则需要成千上万的数据才能达到类似的精度。人们也可以用更丰富的方式学习概念,例如在行动、想象和解释层面。我们提出了一个计算模型,捕捉到人类的学习能力,为基于字母的手写体创造出直观的概念。在这模型背后,研究者使用了简单的贝叶斯程序完成。在这个具有挑战性的分类任务中,贝叶斯程序战胜了深度学习方法,达到了人类的水平。
贝叶斯定理正在变得如此流行,以至于在CBS剧《生活大爆炸》中也出现了它的身影。纽约时报说,贝叶斯统计学家“遍布一切,从物理学到癌症研究,从生态学到心理学”。物理学家提出了量子机器的贝叶斯解释,以及贝叶斯捍卫了弦和多重宇宙理论。哲学家主张作为一个整体的科学可以被视为一个贝叶斯过程,还有Karl Popper普及的方法,贝叶斯能够更精确地区分科学和伪科学。
而就在上个月,《Nature》封面论文谈到,三名来自麻省理工学院、纽约大学和多伦多大学的研究者,开发了能像人类一样学习的“写字”系统,其背后的原理就是贝叶斯程序。
内行人看门道,外行人看热闹。如此看来,在人工智能的巨大盛大宴里,贝叶斯方法起到了举足轻重的作用。科学是如何改变着我们的生活的?让我们拭目以待吧!