贝叶斯概率公式最简单的情况:
P(A|B)=P(B|A)*P(A)/P(B)
关于如何理解/ 记住贝叶斯公式里的先验、后验以及似然。有一个关于编译器的巧妙的例子:
假设今天Alice结束了漫长的期末复习周,准备打开电脑准备半个月前的代码工作,结果发现程序出现了重大错误,那么Alice遇到的问题最有可能是什么导致的呢?
P(A|B)=P(B|A)*P(A) / P(B)中,有以下4点:
- P(A) 表示(A的)先验
- P(B|A) 表示似然
- P(A|B) 表示要计算的后验
- 计算、估算P(A|B)后验概率的习惯是略去分母那个P(B)
如果你分不清以上4点没关系,我们往下看:
-
如何理解后验概率P(A|B):
如果把程序出错这个事情记为“结果”,也就是B,拥有最大P(A|B)的那个原因A,就是导致程序出错的原因。
因此,计算后验概率就是事情发生后,找原因用的,在程序已经出错的情况下,找到最有可能的原因。
-
如何理解似然概率P(B|A)
Alice没有去计算P(A|B)后验概率,她一口咬定导致程序出错的原因是:编译器坏掉啦。Bob问为什么你要这样认为呢?Alice说:因为编译器坏了的话,程序一定会出错啊
Alice说的没错耶,编译器坏了的话,事件B,也就是程序一定会出错。这里Alice考虑的是似然概率,也就是Alice把“编译器坏了”作为事件A,A发生的条件下,B发生的概率几乎是100%
-
如何理解先验概率P(A)
Bob觉得不对劲,想了半天说:可是编译器突然坏掉的概率很小耶
Bob说这句话是考虑了先验概率P(A),之所以称为"先验"是因为它不考虑任何B方面的因素,天王老子来了编译器突然坏掉的概率也是极低的。更何况B发生与否。
-
All in all
因此,用贝叶斯的角度去考虑问题:P(A|B)=P(B|A)*P(A) / P(B)
最先进的地方就体现在,不仅仅使用了Alice的似然,而且使用了Bob的“先验概率”,考虑了A本身发生的概率。得出后验的结果。
其他的不再赘述,牢牢记住编译器的例子可以有助于(至少是我)记住这个该死的公式。