贝叶斯定理
原来可以用来把妹
今天,小天有点烦躁地拿着个笔到处走来走去,超模君实在看不下去,就问了小天到底在烦些什么,原来小天在纠结贝叶斯定理到底厉害在哪里!
这问题,超模君我会啊!答案就是:可以用来把妹!
打个比方,刘同学看上了个漂亮的小姐姐。但是他觉得小姐姐平时比较高冷,长得又好看,肯定难追,追了也没用。
于是超模君抛出了一个问题,即让刘同学求小姐姐对自己的好感度:P(小改改好感度>80)=?
刘同学:“不知道啊,我哪知道人家的想法,感觉不出来,反正就是觉得没戏。”
超模君:“那你有追高冷漂亮小姐姐100000次的重复经历吗?这样我们统计一下你得手的次数,按照大数定律...”
按频率学派的观点,一个事件的概率可以用大量重复试验之下事件出现的频率来解释,这种解释不取决于主体的认识。
但是问题是,对于现实中的很多过程,我们无法进行大量重复实验,从而也就无法求取其概率。即无法求得客观的模型参数,在这种条件下统计概念和方法的频率解释完全没有现实意义。
但,这...也没事,我们还可以求助贝叶斯!
而贝叶斯的概率理论则给了我们一个不同的思路,对于频率派来说,一个模型中的参数是“固定”的,而数据是在分布中随机采样的。
而对于贝叶斯派学者来说,我们观察到的数据才是“固定”的,而我们的模型的参数才是在一直变化的。
我们不停地观察数据,估计出来的模型参数就可能一直的变化。不仅如此,我们对于这个模型的参数可能会有一个最初始的信仰,称之为先验假设,一旦设置后了之后,我们就可以听由观察到的数据指导模型参数更新了。在这种观点中,我们的模型参数不再是一个参数,而是一个分布了。[1]
简单来说,就是盲猜小姐姐很喜欢刘同学!
刘同学:“这是你瞎蒙的,管啥用?”
超模君:“所以叫你先去试试啊!然后你通过她的反应,看看她对你好感如何。假如她跟你聊得很来,不就说明其实没有你原本想的那么难,但是她要是直接不理你,那估计就没什么机会了。”
于是刘同学厚着脸皮去尬聊了,结果不但小姐姐没有看起来那么高冷,俩人还互相加了微信。
根据贝叶斯定理,我们可以得出:
这个是由贝叶斯定理,结合刘同学尝试的结果,重新估计小姐姐对刘同学好感度的公式,对于这种无法进行大量重复实验求取其概率的情况,贝叶斯派的做法是:先假设一个非常主观的概率,然后通过反复测量(观测/尝试),来修正这个概率,使其变得客观。
而超模君让刘同学去试探一下,就是为了获取本次的观测结果。
再来说说公式的各个部分:
这个是之前超模君盲猜的妹子对刘同学的好感度,也就是贝叶斯定理中的先验概率(先于试验/观测的概率)。
而这个,是在小姐姐对刘同学好感度超过80时,估计出她对刘同学有60好感度的概率,我们称为似然概率,它描述了某一原因导致这个结果的概率。
似然这个词,有点晦涩难懂,不过它的英文你应该能体会出一些意义,likelihood,你也可以翻译成可能性,或者相似性。举个例子吧,比如你是个身经百战的情圣,你对自己的估计非常有把握,假设你估计小姐姐对你好感度为80,那么:
假如预估小姐姐对刘同学好感度是50,并且对自己的估计很有把握,那么似然概率的情况(分布)应该是这样:
如果对自己的估计很没把握,那应该是这样。
你可以不太严谨的这样理解:它描述了你这个人估计小姐姐好感度的能力水平。
接下来是这个部分:
P(同学猜好感度=60)
很朴素的来描述它就是:你猜测好感度是60的概率。它代表了你估计结果中的一种,而我们有诸多猜测的可能,如果我们用全概率公式展开它,就能理解它代表的含义啦:
它其实表示了在各种各样的真实情况下,估计出好感为60的概率,它依旧由似然概率和先验概率组成,似然概率我们已经说过,是由自己的估计水平决定的。
而先验概率部分,我们可以发现,这个全概率已经包含了所有真实值的情况,我们可以说这个概率,和小姐姐对刘同学真实的好感度的值无关,而与其分布规律有关,而先验概率是我们自己主观给定的,那么这个概率,应该是一个常数n。
而最后的计算得出的部分,我们称为后验概率,它是我们根据最初的猜测,结合刘同学的试探,得出的对小姐姐好感度‘更客观’的估计。
我们回头说说我们盲猜的先验概率:
这也只是诸多情况中的一种,要完整的描述小姐姐对刘同学好感度的各种情况,我们还是要看它的分布,比如盲猜的0.9,可能是这样:
在实际计算中我们将会用其分布规律来计算,重新估计小姐姐对刘同学好感度。
整个计算过程:1. 提供一个先验值2. 进行观测,获得观测结果3. 根据观测,修正先验,即求出后验
刘同学:“那你快算算小姐姐对我好感度到底多少!”
超模君:“别急,你先和小姐姐再接触一下,我还需要一些别的数据,然后你每次接触之后给我反馈,我再给你计算小姐姐的好感度,咱们持续跟踪。”
上面的计算过程中,如果我们持续追踪小姐姐的好感度,那么每一次都需要提供一个先验,然后进行观测,最后计算后验。那么我们如何获得先验呢?开始的例子,是我们随便猜了一个值,而现在我们每一次都需要一个先验,我们还要每个都猜吗?
实际上小姐姐好感度变化的过程,应该是有一定规律的,如果我们每步都随便猜一个,那么我们就相当于放弃了这些宝贵的信息,因此我们可以假设一个小姐姐好感度的预测方程,来给出每一次的先验值,不用担心,即便它非常不准确,甚至背道而驰,也不会过于影响我们的结果,这点在后面会展示。
过来几天,刘同学来找超模君:“emm... 感觉现在还是不太熟,第一次就要到了微信还是有点太膨胀了,就算40分吧...每次接触之后涨3分左右?”
为了简化计算方便说明,小姐姐的好感度的真实值初始为40,我将假设刘同学不会犯傻,好感度真实值会随着刘同学的不断接触而不断提高,并在第十次约会后能达到80点以上,好感度真实值公式:
根据刚才刘同学的假设,我们再引入一个小姐姐好感度预测方程,省的不靠谱的瞎猜:
其中Q符合均值为3的高斯分布,用来表示每次接触后好感度比之前上升3点左右。而刘同学的每次反馈(该次对于小姐姐好感度的猜测)存在误差,假设误差也符合高斯分布。
过了一个月。
用于模拟一个月内与小姐姐接触了25次,过程中直男朋友的反馈数据和根据贝叶斯定理修正后的好感度数据C++代码
结果:
可以看出,通过贝叶斯定理修正后的小姐姐好感度,比刘同学估计值波动要小得多。
并且,即便刘同学,膨胀到了极点,第一次接触后认为小姐姐已经不可自拔的爱上他了,好感度突破系统极限达到了999,即我们估计小姐姐对他好感度的初始值为999(程序中的plusX[0] = 999),也不会影响后续的结果:
反过来,刘同学因为极度自卑,认为小姐姐对他厌恶到了天际,好感度突破-999也是同样。
贝叶斯学派的思路,初看起来,对比概率派,其实是非常不“唯物”的。
“既然不能知道真正的概率,那我们就先猜一个,然后通过重复观测来修正它。”
但是它的结果非常符合“人类”的思考方式:即便刘同学自信爆炸,经历过几次热脸贴冷屁股之后也应该清醒了。
当然它也非常依赖我们“观测”(刘同学的估计)的准确度,比如如果将刘同学观测准确度的标准差由原来的10改为20,就能明显发现结果比之前更加不稳定(不准确)了,但是还是会比单纯的刘同学估计要“靠谱”一些。
这也非常符合作为人类的逻辑,把妹技术越低的人自然估计的结果越不靠谱。
并且即便刘同学最初对于未来乐观,认为每次和小姐姐接触都会增加好感度(小姐姐好感度预测方程中的,每次会面都会+3好感度),结果实际上小姐姐越来越讨厌他(真实值公式改为y = -15*log(x) + 40):
也并不影响后续的结果。
这同样符合人类的逻辑:即便最开始有乐观预期,经历几轮沉痛打击之后,也不得不承认现实的残酷(误)
有点跑题了,这个过程其实并不是单纯的贝叶斯定理,而是贝叶斯滤波以及其延伸出的卡尔曼滤波的应用。
不过从中也能体会出其厉害之处。总结一下:
1.在不可获知真实测量值(概率)时,我们可以另辟蹊径,根据主观猜测以及观测,得到相对靠谱的结果。2. 其主观猜测的思想非常不唯物,但是又很符合人类的认知。3. 即便我们的预测(先验)非常不准确,也能修正成相对准确的结果。
写在最后
主观猜测(先验概率),非常不靠谱。只有通过不停的试探、接触,才能知道小姐姐对你的真实看法。
喜欢就应该大胆尝试,要学会厚脸皮不怕尴尬。不管好感度999还是-999,都需要接触几轮才能清楚。还要结合历史信息来看待现在,小姐姐突然对你好感度暴增/暴跌很可能只是幻觉(对应图中各处的峰值,实际水平远低于刘同学的估计,也低于修正后的后验),应该学会更加理智,做到宠辱不惊。
作者简介:菠萝包,日本名古屋工业大学 信息工学硕士。
链接:
https://www.zhihu.com/question/61298823/answer/1584195885