贝叶斯定理的另一些东西

贝叶斯定理的另一些东西

本文示例节选自《智识分子· 做个复杂的现代人 》,标题:贝叶斯定理的胆识,作者:万维钢

前面的就不抄到这里了,找原版的书看吧。

贝叶斯定理最关键的思想是:当B发生后,有了这个新的证据,我们对A的信念就需要做一个调整,从P(A)变成P(A|B)了。你可以把A当成你对一般情况的理论预言,把B当成一次实验结果。有了新的实验结果,你就调整自己的理论预言。

现在我们就拿雍和宫祈福这个例子,来看看一个贝叶斯主义者是怎么更新自己的信念的。首先我们用基本的概率公式,把P(B)展开成P(B)=P(B|A)·P(A)+P(B|A+)·P(A+),其中 A 和 A+ 互为相反的事件,A 表示 “雍和宫好使”,A+ 表示“雍和宫不好使”,P(A+)=1-P(A)。这么做可以更精确地估算P(B)。这样贝叶斯定理要求我们先自行估计三个值:

  • 你事先认为雍和宫有多好使,也就是P(A);
  • 如果雍和宫好使,某甲因为祈福加持而升职的可能性,也就是P(B|A);
  • 如果雍和宫不好使,某甲不借助这个力量而升职的可能性,也就是P(B|A+)。

一个比较合理的估计差不多是这样的。某甲既然能升职,必然有过人之处,那么我们可以认为他在没有雍和宫加持的情况下也有50%的升职可能,所以P(B|A+)=0.5。雍和宫就算再灵验也不能有求必应,否则人人出来都成亿万富翁了,我们姑且假设,所谓“灵验”就是能让甲升职的概率大大提升,这样我们可以估计P(B|A)=0.8。如果你事先对雍和宫的信念值是15%,那么P(A)=0.15。

这样根据贝叶斯定理计算,现在你的信念值应该是P(A|B)=0.22。

【【【这里具体的计算我就不算了,下面用 Netica 来操作下上面提到的情况,这个才是本文的重点】】】

Alt text

打开软件新建一个模型

Alt text

添加自然节点

Alt text

Alt text

右键单击节点,属性和表是之后需要添加信息的

Alt text

其他信息可选。

Alt text

然后添加第二个节点,某甲(Jia),事件状态是“升职”和“没升职”

Alt text

添加连接

Alt text

使两个事件关联起来

然后开始设置概率信息,就是Table

P(A)=0.15 P(A+)=0.85

Alt text

所以“好使”的概率是15% “不好使”的概率是85% 点击OK完成

Alt text

P(B|A)=0.8,就是雍和宫“好使”的前提下,甲升职的概率 P(B|A+)=0.5,就是雍和宫“不好使”的前提下,甲升职的概率

这里需要注意的是,概率之和一定是100%,所以上面两个图横向的概率之和都是100%。 根据这个约束条件就可以将上面没有提到的其他概率信息补全。

Alt text

完成贝叶斯网络的初始化后就可以计算了

Alt text

当未观察到甲的信息时,雍和宫“好使”的概率为上面最开始提到的15%

Alt text

当观察到甲因为去雍和宫祭拜之后升职这个事件后(升职事件变成了100%),雍和宫“好使”的概率变为了22%

【【【软件计算的结果跟文中给出的结果一致】】】

玩这种数字有什么意义呢?这比听风就是雨高级多了。如果我的信念从15%变成22%,那么说明第一,我这个人听劝,有利证据进来了,我的确调高了我的信念值;第二,我这个人稳重,没有听到一个证据就立即发生世界观的彻底改变,过去不怎么信,现在还是不怎么信。听劝又稳重,既做到了开张圣听,也没有妄自菲薄,古代对贤人的要求也不过如此吧?

而且你可以继续调整信念。假设过了一年你听说另一个朋友某乙,水平与某甲相当,也去了雍和宫祈福升职,结果未能升职!这一次,P(A)=0.22,现在B表示“未能升值”,所以P(B|A)不再是0.8,而应该是0.2,P(B|A+)仍然是0.5,我们计算出,P(A|B)=0.1

所以因为这一次不灵的事件,你应该把你对雍和宫的信念值从22%调低到10%

【【【好了,用Netica模拟上面的例子,只需要在刚才的基础上再添加一个节点就好了。

Alt text

首先,移除所有Findings,然后选择Uncompile,进入编辑模式

Alt text

添加另一个节点,和 Jia 相似

Alt text

添加相应的概率信息,从上面的描述中应该很容易得出图中的数字,然后选择完成网络。

Alt text

在甲升职了的情况下,雍和宫的信念确实上升到了22%

Alt text

当乙去了雍和宫但是仍未升职的情况发生后,雍和宫的信念确实下降到了10.1%

至此,软件模拟的结果跟文中给出的结果一致。】】】


嗯...这篇文章的重点是用Netica模拟下贝叶斯定理的计算,文中的例子来源在最开始已经给出了。