10 KiB
10 KiB
- https://xuexi-courses.firesbox.com/?utm_source=share#/7000102069/courses/7816
- 贝叶斯定理
- “人工智能” 的 “终极算法”(The Master Algorithm)
- 贝叶斯定理可以用新的证据修订并提高之前假说的正确概率……


- 上一节课讲到未知结束的时候,我们说其实在此之前相当长一段时间里是长长的暗黑时代,到此为止,我们顶多走到了后半夜,离哪怕黎明还有相当长一段时间的距离。你看,那后来就来了曙光了。哈,那这就是我们这节课的标题,曙光,让我们从一个专门的词开始说起,叫算法,大家可能都听说过,所谓的算法,通俗的讲就是计算的方法,那再进一步通俗化的话就是一步一步怎样算而已。其实这也是一种流程而已。人类史上迄今为止最重要、最具价值的算法,很可能是 200 多年前一位牧师提出来的,后来人们以他的名字将其命名为贝叶斯定理。说实话,仔细想想的话,这个贝叶斯本人可能并不同意这个以他名字命名的定理名称,因为严格意义上来看,贝叶斯只是证明了贝叶斯定理的一个特例。而另外一位数学家叫拉普拉斯,证明的是贝叶斯丁里的一个更为普遍的版本,并将其应用于天体力学、医学、统计甚至法律学之中。
- 但是比较遗憾的是什么呢?这个拉普拉斯被称为数学界的牛顿的泰斗哈。拉普拉斯认为这个定理几乎无关紧要。遗憾的是什么呢?当时贝叶斯只是个小神父,而拉普拉斯是个大神,你看,数学泰斗。于是拉普拉斯的看法影响了随后 100 多年时间里,几乎所有的统计学家,要直到 20 世纪 50 年代快要结束的时候。那从现在往回看的话,就是 70 多年的时间。
- 70 多年前贝叶斯定理才被重新发现,就好像当初亚里士多德的言论在消失之后,一千多年之后重新发现一样,而后逐步变成了今天所谓人工智能的终极算法。虽然说上面这个数学公式的理解难度实际上并不是特别高,但也的确不是一看就懂的那种,它也并不是存在于当前正在讲授的中学课本里,甚至绝大多数本科毕业生在毕业之前也不见得在自己的学科里见到过他,就算见到过他的人,也不见得对他真正了解,也只不过是一知半解,弄不好只不过是仅仅听说过而已。其实无论在哪个国家都是一样的。这实在是在重要的知识点上认知分布差异极大的一个经典案例,在人群当中,对这个当下正在对人类影响最大的数学公式,或者所谓的算法不了解之比例之高,实在是令人惊讶。
- 拿中国为例的话,大家可能听说过,在中国,本科学历以上人口仅占人群的 4% 都不到,研究生学历以上人口仅占整个人口的 0. 6% 都不到。然后你要知道的就是说,不管是本科学历还是研究生学历,其中绝大多数学科可能都不会在自己的专业领域里应用到这个公式。于是在人群当中,真正理解他并且真正应用他的人仅占 1/ 10000 不到,都不见得是错误的估计。所以如果你见过这个公式,不一定理解这个公式,你也别着急,实在是没办法的事情,这是当下教育的结构造成的,对吧?等到下一代的下一代,很可能在中学的时候或者小学的时候,就有人在课堂上讲解这个东西了,到那个时候可能知识的普及率就真的提高了。但是现在智商积累、教育生产资料都相对有限的普通人,比如说你和我,常常可以选择捷径,这个捷径是什么呢?就所谓的四个字叫囫囵吞枣。也就是说,虽然那证明过程我看不大懂,可如果那结论的确严肃且靠谱,那么我总可以把它直接拿过来用吧?事实上,我自己翻阅很多领域的科学论文的时候,也的确正经常这么干,反正也理解不了正文过程,看完之后,看完概要之后,就直接跳到末尾去看结论,然后拿着结论去解决问题。
- 你还别说,就这样轻松解决了不少问题,你仔细想想就明白了,哪怕字面意义上的囫囵吞枣,你拿了一个枣直接吞了下去,虽然缺了咀嚼的过程,少了品尝的滋味,甚至可能吞下了原本就应该吐出来那个枣核。但是从冲击的角度来看,也的确相当管用。我们不是在讲概率课,现在也不是想马上深入研究人工智能主算法,所以我们可以在这里先不管具体的细节,就先囫囵吞枣的理解一下贝叶斯定理究竟是干什么的。以下这句话我相信其实所有人都能读懂,不管你是本科学历还是研究生学历,或者是仅仅中学学历,这个贝叶斯定理用来干什么呢?它就是可以用新的证据修订并提高之前假说的正确概率。
- 每个词都认识对吧?然后每个词都好像不复杂,你先囫囵吞枣的去理解这句话,这个贝叶斯经理就是用来干什么的?他修正假说正确的概率,那用什么修正?用新的证据?举例来说,炮兵在战场上就不由此主敌,在应用贝叶斯丁力,你别管他是否知道贝叶斯定理这个词汇,但他就是在用。或者换个说法,炮兵在打击目标的过程,其实就是贝叶斯推理过程。当一个炮兵瞄准目标并且准备发射的时候,他现在就持有一个假说,他要熟悉自己的设备,能够估算炮弹的轨迹,估算距离和风速的影响,确定炮筒的方向和角度。然后这个假说有一定的成功概率,击中目标,虽然很难直接做到 100% 准确。然后第一发炮弹打过去,击中了目标,那当然很好,可以说是技术好,也可以说多少有点运气好。事实上,哪怕成功概率不超过一半,也有可能第一次就打中,你说是不是这样?这第一发如果没有打中,其实很正常,但是第一发炮弹落地的位置将成为新的证据,而这个新的证据将使这位炮兵改进自己的假说,它会调整炮筒的方向和角度。于是,这一次的假说比上一次的假说成功概率更高。这个其实就是贝叶斯推理过程。在此之前,这个形式逻辑也好,非形式逻辑也好,统计概率也罢,事实上都是面向过去的,而后一厢情愿的希望能够用基于过去的数据,在当下分析出来的结果去指导未来的决策。
- 翻译过来就差不多是经过分析确定过去是因为这样,所以那样,然后再下一步是多少一厢情愿了。如果我现在这样,那么将来就会那样。可问题在于说,如果我现在这样,那么将来就会那样,往往只不过是一个假说,而非确定的结论。那有句话说的好,是这么说的,说这世界唯一确定的就是不确定。于是问题在于说,不确定又总是藏在世界里,并着随着时间的推移终将显现,那么等它出现的时候,就一切都是 0 了。更为关键的细节,可能不是所有人都可以听得懂的。不过先囫囵吞枣这个贝叶斯推理过程是可以递归迭代地使用的,也就是说,它可以反复通过新的证据提高假说正确的概率,直至那个假说正确的概率接近100%。而传统的统计概率,它只是一次性计算,且不见得可以递归迭代地使用。
- 好了,我们不继续深入了,要不然的话,我还得去讲什么叫递归,什么叫去,什么叫迭代。但是目前的理解囫囵吞枣已经足够用了。于是,有了贝叶斯定律之后,突然之间,人类有了一个面向未来的因果推理工具,贝斯定理或者贝斯推理过程可以不断的用新的证据计算假说的正确概率,并且通过对假说进行逐步调整,达到更高的正确概率。那换言之,人类终于有了一个工具可以用来预测未来了,虽然那预测不可能一上来就是 100% 准确,但它就是可以通过不断迭代,逐步提高预测的准确率,直至接近100%。这真是一个漫长的历史过程,起初的几十万年时间里,人类几乎没有什么思考工具。然后到了公元前 4 世纪出来了一个形式逻辑,亚里士多德提出的开始的形式逻辑,但是它不能给我们带来新的知识。然后到了 17 世纪才有统计概率,然后这个统计概率直到 1964 年才在中国被正这个正式统一命名,对吧?然后到了上个世纪的 70 年代才有所谓的非行事逻辑。那贝叶斯丁理虽然是 200 千年前被发这个被提出,然后 70 多年前被重新发现,但其实只有到了最近的 20 年才开始全面应用。
- 生活中,民众是倾向于拒绝任何不确定性的,这其实也是没有办法的事情,尤其试错的成本涉及到金钱甚至生命的时候。在实际生活中回避不确定性,事实上确实可以躲避很多的危险,少承担很多的损失,这是不可否认的事实。那久而久之,大多数人不仅回避不确定性,也养成了干脆拒绝对不确定性进行思考的习惯。因为人们有限的实际经验表明,那不仅浪费时间,且总是危机四伏,这是实情。当然了,其实更为深层次的原因是一个现实的局限。
- 什么呢?就是我们的人脑不够用。我的意思是说,任何人类的大脑在使用贝叶斯定理去预测未来,或者提高预测准确度的时候都不够用, 100% 都不够用。因为贝叶斯推理过程需要的不只是一次运算,而是从不间歇的持续运算,这只是第一个层面。再进一步,人脑就更不够用了,因为要计算的因素,刚才的公式上写的是两个,可现实生活当中需要计算的往往不止两个,而是很多很多个。那请问人脑怎么能够用呢?每多考虑一个因素,计算量就会几何基数上涨,仅凭人脑怎么可能够用?没有任何人的人脑是够用的。万幸是,今天的人们有了另外一个工具,那就是计算机。
- 这个计算机无疑是人类史上最成功的仿生产品,飞机、潜艇什么的相对来看就弱爆了,对吧?因为电脑仿生的是天下最复杂的器官人脑,并且随着时间的推移,综合各种因素,计算机的硬件和软件持续发展,并逐步突破了各种限制。比如单台计算机的运行速度和效率在持续提高的同时,他们的单位时间耗能也越来越低。