预测的算法、技法和心法

这一篇博文写的很有意思,码在这里,有助于理解预测。

版权归作者所有,任何形式转载请联系作者。
作者:FCperson(来自豆瓣)
来源:https://www.douban.com/note/623720961/

用贝叶斯法则逼近真相

我还在读高中时,就对数学课本里的一个章节很感兴趣:排列组合。当时觉得它相当不“数学”,主要靠“想”不靠“算”的,一旦悟了心算就能出答案,草稿都不用打。到了大学,这部分内容发展成了另外一门课程:概率与统计,其强调用户体验的特点依旧,很多定理是易“读”不易“写”,听上去都是很生活化的常识,但真要翻译成严谨的数学表达就变成了一副艰深晦涩的嘴脸。

后来我发现,我之所以对这些内容饶有兴趣,是因为它们和生活中那些令人兴奋的词汇之间有着密切的关联,比如运气、判断力、赌、眼光等等。如果只用一个词来总结,那就是:预测。
预测是对不确定性的估计。不确定性无处不在,生活中大多数的决策尤其是广义上的“投资行为”都要在信息不完备的情况下做出,预测能力就像健身中的基础体能的概念一样,可以作为个人认知框架中的核心肌群。

本文通过自下而上的三个层次来总结我自己现阶段对预测能力的理解,它们分别是:预测的算法、技法和心法。

底层算法:概率与统计

算什么?

在概率计算时,首先要明确一个问题:你想算的究竟是什么?这个问题听上去很蠢,但在很多时候却会成为一个反直觉的大坑。我的心得是:分清楚眼前的事实和心中的推测。

你的配偶最近行踪鬼祟,丫绝逼是有外遇了…吗?这里很容易混淆两种概率:有外遇的情况下鬼祟的概率和鬼祟的情况下有外遇的概率。有外遇的人大部分会变得鬼祟,并不代表鬼祟的人大部分都有外遇,比如我就只是想溜出去踢个球而已。有点绕是不是?没关系,用我的诀窍,拷问自己你眼前的事实是什么?是鬼祟!你心中的推测又是什么?有外遇!所以你真正的问题是:求鬼祟的人有外遇的可能性。
另外说一句,概率讨论的是可能性,和因果关系、时间先后等都无关。我们看到一个鬼祟的人猜想他有外遇的可能性,或者知道一个人有外遇,猜想他鬼祟的可能性。至于是外遇引起了鬼祟,还是鬼祟容易招惹外遇,究竟是鬼祟在先还是外遇在前,这些都不在讨论范围之内。事实上,我认为正是因为人在潜意识里追求因果解释,所以才容易在概率问题面前发懵。

第二个例子,在辛普森案中,辛普森的辩护律师用有家暴史的人中只有非常小的比例会发展到杀妻来为曾经殴打老婆的辛普森辩护,有没有道理?上绝招:事实是什么?一、辛普森有家暴史;二、他老婆被谋杀了。推测是什么?辛普森杀了老婆。所以,真正应该参考的是:被丈夫家暴过且最终被谋杀的女性中,凶手就是丈夫的比例。而不是家暴男会杀妻的比例。
第三个例子,有一种绝症,1000个健康人去验血,只有一个会被检测出阳性。而你就是阳性。死定了吗?先别怕,用绝招:事实是什么?你阳性了。推测是什么?你绝症了。所以真正的问题是什么?检查出阳性的情况下真的患病(或者没患病)的概率。而不是没病(或者有病)的情况下检查出阳性的概率。这两个不是一回事。具体怎么算,后面会说。

最后来一个半真实的例子,摇号上幼儿园,你查了一下去年幼儿园的招生名单里自己小区的小孩的人数,比例不到10%,该不该悲观?不一定。因为就算要这么考察也应该是:我们小区报了名的小孩里最后摇中的比例,而不是摇中的小孩里我们小区占的比例。再强调一遍,扪心自问事实是什么?事实是我们已经住在小区里,而不是我们已经摇中号了,已经摇中了还在这儿费什么劲啊。

如何计算?

弄明白了算什么,你已经取得了认知上的一次重大胜利。接下来的问题是怎么算。大致来说有两条路:计算和估算。前者是在已知某些概率的情况下预测目标事件的概率,数学上叫“概率学”;后者是根据已知的观测数据来估计目标概率,数学上叫“统计学”。

先说如何计算。我的心得是:搞清楚样本空间。样本空间是行话,用俗话说就是把所有的可能性都罗列出来。不要试图取巧走捷径,非常容易弄巧成拙。然后在样本空间里找出你的目标事件,用后者除以前者就得到了概率。

下面举一套“两个女儿”的例子来说明样本空间的重要性。

问题一:周家有两个小孩,求他们都是女儿的概率。先按出生顺序把所有的可能性罗列出来:(男、男)(男、女)(女、男)(女、女)。这里隐含了一个已知概率:生男生女都一样,概率各为50%,因此上面四种情况出现的概率也是一样的。然后从样本空间里找到目标事件:(女、女)。最后拿目标事件的数量1除以所有样本的数量4,得到答案25%。

问题二:周家有两个小孩,头胎是女儿,求二胎也是女儿的概率。很简单,样本空间:(女、男)(女、女),目标事件:(女、女),因此周家有两个女儿的概率为1除以2等于50%。

问题三:周家有两个小孩,其中一个是女儿,求周家有两个女儿的概率。是不是觉得这题刚做过?不急,先列样本空间:(女、男)(男、女)(女、女),目标事件还是(女、女),因此答案是1/3。

问题四:周家有两个小孩,其中一个是名叫“周盖绿”的女儿,求周家有两个女儿的概率。你丫在耍我吧!这不是一回事吗?还真不是,前面说过计算概率时感觉是相当不靠谱的。老老实实列样本空间:(男、盖绿女)、(盖绿女、男)、(盖绿女、非盖绿女)、(非盖绿女、盖绿女)、(盖绿女、盖绿女)。这里的隐藏概率是:在众多女孩名字里,硬要叫“周盖绿”的概率极低。因此,最后一个样本(盖绿女、盖绿女)的概率可以忽略。而剩下来的四种样本概率相同(因为生男孩的概率几乎等于生“非盖绿”女孩的概率)。目标事件是这些情况里的第三和第四种,因此周家有双女的概率为2/4等于50%。
通过双女问题有没有体会到样本空间的威力?同样的问题,因为样本空间不同,答案也不同。其实这里面蕴含着一个类似的道理:只尊重事实不预设立场。将所有兼容已知事实的可能情况组成样本空间,再从中找出目标事件。下面再用一个前面提过的例子来展示如何构建样本空间。

某绝症的假阳性率(无病情况下检查出阳性)是千分之一,你阳性了,求你的绝症率。放心,不是999/1000。求解此题还需要一个关键的输入:这种绝症的发病率,假设也是千分之一。如果追求严谨还得知道假阴性率(患病而显示阴性的概率),假设还是千分之一吧。下面构建样本空间,即检查出阳性的人群。考虑有一百万人,其中会有1000个病人和999000个好人(因为发病率是千分之一)。1000病人里有999人会查出阳性(因为假阴性率千分之一)。好人里也会有999个阳性(因为假阳性率千分之一)。所以样本空间(阳性结果)是2×999,而目标事件数量(真病人)是999,目标概率是50%。

最后举一个高中习题集里的“著名”的例子:求任意二十个人里,出现生日相同的概率。首先是逆向思维,先求出所有人生日都不同的概率。然后构建样本空间:二十个人生日的所有可能情况,因为每个人的生日都有365种可能,所以一共是365的20次方种情况。再从中找出目标事件的数量:要大家生日都不相同的话,第一个人有365天可选,第二个人有364天(刨去一个人的生日),以此类推,最后一个人有346天可选(365天除去前面19个不同的生日),所以总数量是365×364…×346。最后得出答案,具体就不算了,我记得大概是50%左右。

如何估算?

上节的内容冒着浓郁的书呆子的腐臭味,实用性其实并不强。因为计算的前提是要知道某些概率先,而现实生活中大多数的情况正好相反:具体概率未知,需要我们通过观测去找出来,这就是我说得估算问题。这一块最重要的是理解两个定理:大数定理和中心极限定理。

用一句话来概括大数定理的中心思想就是:足够大的样本几乎肯定能反映出被采样群体的真实组成。举个具体的例子,假设我们要估计某个市长候选人的支持率,如果要确保我们的调查结果与真实支持率的误差在2%内的概率大于90%,我们应该发放多少份调查问卷。大数定理就是用来解决类似的问题。还是觉得有些绕?没关系,其实我们只要理解一点:太少的样本反映不出真实情况。比如你对面走来四男一女,你肯定不会认为这个城市的男女比例就是4:1,因为5个人的样本太小了。至于到底应该考察多少人,样本具体要怎么选,这些问题留给人口普查专家吧。这里给出一个非常粗略的结论:想估算某种概率时,100个样本太少,1000个样本差不多开始靠谱。

理解大数定理需要注意避免陷入赌徒谬误,抛硬币时连续得到正面时,并不代表大数定理会“确保”今后出背面的可能会更大。正确的理解是,如果再抛足够多次,将会出现很多的正面和反面,以至于目前这点差异可以忽略不计,而最终的比例会逼近1:1。

最后来说一下“中心极限定理”,它是说如果一件事情受到很多随机因素的影响,那它的概率分布将符合一种叫钟形曲线的形式,数学上称为正态分布。就是绝大多数样本都集中在“平均值”附近,“另类份子”会随着偏离程度迅速减少。比如寿命吧,受到基因、营养、气候、心情等等非常多随机因素的影响,因而符合正态分布,假设平均寿命70岁吧,绝大多数人都会在70岁附近Game over,百岁老人那可是凤毛麟角,恐怕还没人能活到140岁的。

其实我觉得中心极限定理在日常生活中的意义不大,因为根据塔勒布的观点,统治现实世界的是二八法则,数学上叫幂律分布。比如财富吧,假设平均年收入是10万,百万、千万甚至亿万收入的人数可绝不能忽略不计。总之中心极限定理主要还是应用在比较单纯的“物理世界”里,不要轻易地往复杂的现实世界中套。

中层技法:贝叶斯定理

在现实生活中做预测很少有一锤子买卖,而是一个根据新情况不断修正的过程,这背后的数学模型叫做贝叶斯定理。首先在没有任何新线索的情况下给出目标事件的先验概率,然后给出和新线索相关的正反两个条件概率,最后根据贝叶斯定理计算出修正后的后验概率。当下一条新线索出现的时候,把上次的后验概率作为这一次的先验概率,然后不断重复这一过程,逐步修正预测结果。

还是拿之前的体检来举例。目标是预测患病的概率P,体检结果出来之前预测的患病概率称为先验概率:X=1‰。新线索是体检结果呈阳性。正反两个条件概率是,一、患病情况下阳性的概率:Y=999‰;二、没病情况下阳性的概率:Z=1‰。最后根据公式求出后验概率:P=XY/[XY+Z(1-X)]=50%。这个50%就是目前我们的预测结果,如果出现新的情况比如头痛,就要把50%作为患病的先验概率,然后找出患病和不患病情况下头痛的概率,最后根据贝叶斯定理计算出新的后验概率。

贝叶斯定理有这样一个特性,尽管不同的人对先验概率的估计并不相同,随着时间推移,证据越来越多,经过不断的迭代,所有人的预测将逐渐趋同。所以这里面还是那个道理:做预测要尊重事实。
比如,当第一架飞机撞上双子塔之前,不同人对美国本土遭受恐怖袭击的概率估计各不相同,但都不会太高。第一架飞机撞上后,所有人的预测都会显著升高,当第二架飞机撞上后,所有人的预测都会收敛到一个很高的值,即大家都确信这是恐怖袭击而不是意外。

顶层心法:内外视角结合

坑多慎入

人在做预测时很容易被进化而来的本能驱使去寻找原本不存在的模式,努力从随机噪声中发现模式。人习惯于总结因果关系,把随机理解成注定。但非凡的事发生并不一定要有非凡的原因,可能只是随机事件。比如一个明星球员状态下滑,很可能并不是由于骄傲后产生的懈怠,而仅仅是又一个均值回归现象,事物就是很难长期持续维持在高点,就像抛硬币很难一直抛到正面。

除了试图从随机中发现因果关系,人还容易把相关性理解为因果关系。在纷繁复杂的现实世界里,想要确证两个因素之间互为因果很难。相比之下,如果样本充足,确认相关性是比较容易的。但事物之间存在相关性并不代表有因果联系。冰淇淋销量上升总会伴随着溺水事件的高发,并不是因为冰淇淋带着魔咒,而仅仅是因为夏天来了。

人们如此渴求因果关系,可能是因为需要这种由确定性带来的控制感。后果就是为了拥抱这种安全感,人们很容易陷入内部视角无法自拔,只关注那些符合我们预设立场的信息,而不在乎其真实性,对其他的可能性更是视而不见。如果你认为你的斧子不见了是因为被邻居偷了,那之后他任何的平常举止都会被解读为“心虚”。追求因果还会让人在样本容量不足的情况下急于做出结论,比如根据短期业绩来评价个人能力,实际上如果多观察几年大多数明星基金经理都将很快褪去光环。追求因果的另外一个效应是“事后诸葛亮”,但真相是事前预测的难度远高于事后解释,这有点像从地下停车场走到商场不会费你什么劲,但买完东西后你却经常找不到车了。

由外及内、持续修正

做预测的主线是贝叶斯过程,起点即先验概率必须从外部视角获得。如果告诉你一个人的个人信息、家庭组成、性格特点等等,要预测他养狗的概率。第一步应该是去查这个地区养狗家庭的比例,这才是外部视角。而不是开始用内部视角编写“哦,他离婚了,孩子没判给他,那他多半会养宠物来弥补空虚吧”这样的剧本。除了调查统计数据外,还有一个获得外部视角的小窍门:许多证据表明,群体预测比个人预测的准确率要高出15%~20%,这大概是因为在群体预测中许多个体偏见被相互抵消从而包含了更多的有效信息。

用外部视角奠定基调后,需要根据新的信息通过贝叶斯过程的不断迭代,持续更新预测,从而逐渐接近真相。具体到操作就要考验个人的功力了,假大空地说就是:对于新信息,不要反应不足也不要反应过度。除此之外,也真没有什么更合适的法则了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值