世界是我们的,也是你们的,但归根结底,世界是贝叶斯的。
—— 胡所巴道·丹史乎由谢道里斯基
希望这篇文章能够带大家一起了解神奇的贝叶斯概念,启发更多神奇的思考。
继续上文...
第八层、贝叶斯检验:怎么从后验反推先验?
我们知道贝叶斯是从先验加条件(似然和边缘)来计算后验概率的:
当然我们从公式可以得到计算先验的公式:
其实从展开的公式中根本看不出谁是先验后验,照公式写就行了:
我们简单先说一下检验的事情,简单说,检验就是人家给你一个结论,你怎么用数据去推翻它或者接受它,当然无论最终是否接受,我们都应该有另一个与之不同的结论进行对比,如果我们的差异化结论更好,我们就接受人家的结论,否则我们就接受自己的(拒绝人家的)。
在检验里,一般我们把人家的结论叫做零假设,把与之不同(往往是相反的)结论叫做备择假设。
举个例子。随机抛硬币,连续抛出5次正面,我们是否可以认为这个硬币不正常被做过手脚?可能每个人都有自己的答案,但这里有一个科学的算法做参考标准。
- 零假设:硬币正常,反正面出现机会各一半。
- 备择假设:硬币不正常,反正面机会不一样。
我们知道,按照零假设,连续5次正面出现的概率是:
如果我们认为发生了低于5%可能性的事情就不合理,那么5次正面的概率是3%就不合理了,我们就要拒绝零假设,认为硬币不正常。
实际上这个任意划的界限5%也叫做显著性水平,如果我们划到1%,那么5次正面还可以接受,继续认为硬币正常,你需要连续7次正面才能拒绝零假设。
连续成功的概率比较好求,每次成功概率为p,要是求n次里面k次成功的概率,就要用到下面这个改了质量函数,这里的感叹号代表阶乘:
对于概率的认知,有两种不同学派,一种是频率学派或者说是统计学派,比如上面这种算法。另外一种就是贝叶斯学派,我们接下来用贝叶斯的思考方式来研究,多少次连续正面就可以拒绝零假设。
统计学派的检验看显著性水平,贝叶斯学派的检验看贝叶斯因子(bayes factor,简写BF),什么是贝叶斯因子呢?看公式:
可以看出BF就是两个假设下E事件发生概率的比例,大于1就是零假概率更大,小于1就是备择假设概率更大。但实际上习惯遵循下面经验:
- BF < 1: 证据倾向于支持零假设
- 1 < BF < 3: 证据对备择假设的支持是温和的
- 3 < BF < 10: 证据对备择假设的支持是强的
- BF > 10: 证据对备择假设的支持是非常强的
如果你是个敏感的人,贝叶斯因子大于3的时候就可以拒绝零假设了,这时候备择假设的成功率比零假设高三倍了;如果你是个谨慎的人,可以等到大于10的时候再拒绝零假设。
我们来算下硬币正面连续朝上这个事情。为了计算简单,我们稍微修改一下备择假设为是指硬币正面朝上概率为0.6,反面朝上概率p=0.4。那么:
这时候你可以倾向支持备择假设认为硬币正面朝上的概率更靠近0.6,但还不足以形成有力的证据否定零假设。实际上,当连续7次正面的时候,BF大约是3.6才会超过3,才可以比较强的否定零假设。
如果我们把备择假设正面朝上的可能设置比0.6高,就会导致更容易推翻零假设,这其实并不合理。我这里只是为了计算简单,比较合理的是把备择假设设置为零假设的完全相反面,即硬币不均匀,即除了正反各0.5之外的所有情况,这就需要使用幂函数积分来计算证明朝上概率p在0到1之间所有的可能的概率之和,可以使用下面公式:
当n=4时BF=3.2>3;当n=7时BF=16>10。这和统计学派的结论基本一致。
贝叶斯因子还有什么用?
如果我们认为备择假设是A条件下B发生的概率,零假设是无条件下B发生的概率,那么贝叶斯公式就变成:
看起来简单多了,但构成贝叶斯因子的这两个概率往往并不那么好求。以检查阳性的案例来看一下。
- 已知先验:所有人此疾病发病率1%
- 已知边缘:所有人会有10%检测为阳性
- 已知似然:真病人中90%为阳性
我们可以快速得出结论:
更多情况下我们往往只知道先验和下面两个值:
- 真病人能够多少比例被正确检查出阳性,即上面的似然,也叫召回率(Recall),也叫敏感度(Sensitivity),比如是80%
- 无病的人有多少比例被正确检查为阴性,即也叫特异性(Specificity),90%。
看看下面这个式子有什么含义?
展开变为除法模式,然后乘以有病和无病比例,看看得到什么?
这代表什么?只要有,然后我们加上1%的先验,就有
这有什么用?这个8/99就代表全部有阳性的人中8个真有病对应99个真没病,就代表,诊断为阳性的患病率为80%。
其实下面也是另一种的贝叶斯因子,而且可以简化,还可以链式调用,因为都是比例关系,不涉及范围问题:
使用方法:
<未完待续>
下篇我们将关注更多有趣的相关算法和知识,敬请关注。