今晚和一个师妹偶然聊起概率论里的贝叶斯公式. 于是我重新阅读浙大的《概统》, 温故而知新.

介绍

贝叶斯公式通常与全概率公式全概率公式放在一起讲. 贝叶斯公式是由全概率公式 推导 出来的. 两个公式分别如下:

全概率公式:

$$P(A)=P(A|B)P(B)+P(A|\bar{B})P(\bar{B})$$

贝叶斯公式:

$$P(B|A)=\frac{P(AB)}{P(A)}=\frac{P(A|B)P(B)}{P(A|B)P(B)+P(A|\bar{B})P(\bar{B})}$$

(为了方便这里取 $n=2$ 的简单情形.)

解读

全概率公式的比较好理解的, 即 "整体概率 = $\Sigma$ 部分概率". 而贝叶斯公式就没有那么直观了. 它所研究的是两个条件概率 $P(A|B)$, $P(B|A)$ 间的关系. 如果令 $A$ 是感染新冠, $B$ 是检测阳性, 那么 $P(A|B)$ 表示的是 "在检测阳性的前提下, 感染新冠的概率", 而 $P(B|A)$ 则表示 "在感染新冠的前提下, 检测阳性的概率". 当年笔者初学时傻傻分不清这两个的区别. 其实很简单, 既然 $A$(感染新冠) 和 $B$(检测阳性) 是两个不同的事件, 既然是不同的事件就可以计算二者的条件概率, 进而研究两个不同条件概率的数值联系.

举例

但凡提到贝叶斯, 必然有以下的例题:

例: 某检测仪器的准确率是 $P(\text{准确率})=0.99$, 全市得新冠的可能性是 $P(\text{感染新冠})$ (分别取 0.1, 0.01, 0.001). 某市民检测阳性, 问得新冠的概率.

直接套用贝叶斯公式, 可得

$$P(\text{结果}) = P(\text{感染新冠}|\text{检测阳性})$$
$$=\frac{P(\text{准确率})P(\text{感染新冠})}{P(\text{准确率})P(\text{感染新冠}) + (1-P(\text{准确率}))(1-P(\text{感染新冠}))\quad\quad\quad\quad\quad\quad}$$

已知 $P(\text{准确率})=0.99$, 则 $P(\text{感染新冠})$ 分别取值时可得下表:

$P(\text{感染新冠})$$P(\text{结果})$
0.10.92
0.010.50
0.0010.09

可见, 当 $P(\text{感染新冠})$ 非常接近 0 时, 出现 假阳性 的概率会增大. 这也是符合现实的: 假设全市 1% 的人感染新冠, 某检测仪器只要在检测时不管谁都报 "阴性", 那么该仪器就能有 99% 的 "准确率". 这也意味着, 只要感染概率小, 任何劣质的仪器都能有很高的准确率, 被这类劣质的仪器检测出 "真得新冠" 的可能性自然也就很低了.

联系机器学习

承接上例. 学过机器学习的都对混淆矩阵并不陌生. 先列出上例的混淆矩阵, 阳性代表感染, 阴性表示没感染, 每个格子表示所对应的人数.

-判断阳性判断阴性
实际阳性TP (ture positive, 真阳性)FN (false negative, 假阴性)
实际阴性FP (false positive, 假阳性)TN (true negative, 真阴性)

那么上例的准确率可以同时指以下三项:

$$\frac{TP+TN}{TP+FP+FN+TN},\quad\frac{TP}{TP+FN},\quad\frac{TN}{TN+FP}.$$

这三项在上例中是默认相等的, 但在机器学习中是不同的概念:

  • 第一项是准确率(accuracy), 表示在全体样本中猜对的可能性.
  • 第二项是真阳率(true positive rate, TPR, 也叫查准率精度), 表示在全体实际为阳的样本中猜对的可能性.
  • 第三项是真阴率(true negative rate, TNR).

很明显, 上例的准确率同时混合了三个概念, 默认了三者完全相等. 实际上三者是相互独立的. 笔者猜测如果在课堂上强调这三个概率, 会给学生带来不必的困扰.

而所求的 $P(\text{感染新冠}|\text{检测阳性})$ 则是

$$\frac{TP}{TP+FP}$$

这是机器学习里面的召回率(recall, 也叫查全率), 表示在全体判断为真的样本中猜对的可能性.

标签: none

评论已关闭