定义
贝叶斯定理描述了如何利用现有证据更新某一事件的概率。
对于一个构成样本空间划分的事件集合 和任意事件 ,贝叶斯定理的表达式为:
其中:
- (后验概率 Posterior):在观测到证据 后,假设 成立的概率。这是通过计算想要得到的结果。
- (尤度 Likelihood):在假设 成立的前提下,观测到证据 的概率。它描述了假设与证据的匹配程度。
- (先验概率 Prior):在没有任何证据支持的情况下,认为假设 成立的初始概率。
- (边缘似然 Marginal Likelihood / Evidence):在所有可能性下,观测到证据 的总概率。它是一个归一化常数,确保所有后验概率之和为1。
图形表示
1. 全集划分
为红色区域, 为蓝色区域, 全集为
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
% 背景全集
\draw[thick] (0,0) rectangle (5,4) node[below left] {$\Omega$};
% 圆心与半径
\coordinate (O) at (2.5,2);
\def\R{1.3}
\def\r{0.7}
% 大圆与等分线
\draw[thick] (O) circle(\R);
\foreach \a in {90,-30,-150} {
\draw[thick] (O) -- ++(\a:\R);
}
% 小圆 B
\draw[thick] (O) circle(\r);
% A₁ 区域红色横线填充
\begin{scope}
\clip (O) -- ++(90:\R) arc[start angle=90,end angle=-30,radius=\R] -- cycle;
\foreach \y in {-1.0,-0.8,...,4.0} {
\draw[red, line width=0.6pt] (-1,\y) -- (6,\y);
}
\end{scope}
% B 区域蓝色竖线填充
\begin{scope}
\clip (O) circle(\r);
\foreach \x in {0.0,0.2,...,5.0} {
\draw[blue, line width=0.6pt] (\x,-1) -- (\x,4);
}
\end{scope}
\end{tikzpicture}
\end{document}2. 分解图形
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=0.5]
% ----------- 全局参数 -----------
\def\R{1.3} % 外圆半径
\def\r{0.7} % 内圆半径 (B)
\def\xgap{1.2} % 列间距
\def\ygap{-2.5} % 行间距
\def\dx{-2.2} % 红横线范围
\def\dy{-2.2} % 蓝竖线范围
% 三个扇形的角度 (逆时针)
\def\aOne{90} \def\aTwo{210}
\def\bOne{210} \def\bTwo{330}
\def\cOne{330} \def\cTwo{90}
% ---------- 第一行:完整扇形 (A_i) ----------
% -------- A1 ----------
\begin{scope}[shift={(0,0)}]
%--- 红横线 (外环) ---
\begin{scope}
\clip ({\R*cos(\aOne)},{\R*sin(\aOne)}) arc (\aOne:\aTwo:\R) -- ({\r*cos(\aTwo)},{\r*sin(\aTwo)}) arc (\aTwo:\aOne:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2}{\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
%--- 蓝竖线 (交集) ---
\begin{scope}
\clip (0,0) -- ({\r*cos(\aOne)},{\r*sin(\aOne)}) arc (\aOne:\aTwo:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
%--- 边界 ---
\draw[thick] (0,0) -- ({\R*cos(\aOne)},{\R*sin(\aOne)}) arc (\aOne:\aTwo:\R) -- cycle;
\draw[thick] (0,0) -- ({\r*cos(\aOne)},{\r*sin(\aOne)}) arc (\aOne:\aTwo:\r) -- cycle;
\end{scope}
% -------- A2 ----------
\begin{scope}[shift={(\xgap,0)}]
\begin{scope}
\clip ({\R*cos(\bOne)},{\R*sin(\bOne)}) arc (\bOne:\bTwo:\R) -- ({\r*cos(\bTwo)},{\r*sin(\bTwo)}) arc (\bTwo:\bOne:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2}{\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
\begin{scope}
\clip (0,0) -- ({\r*cos(\bOne)},{\r*sin(\bOne)}) arc (\bOne:\bTwo:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\R*cos(\bOne)},{\R*sin(\bOne)}) arc (\bOne:\bTwo:\R) -- cycle;
\draw[thick] (0,0) -- ({\r*cos(\bOne)},{\r*sin(\bOne)}) arc (\bOne:\bTwo:\r) -- cycle;
\end{scope}
% -------- A3 ----------
\begin{scope}[shift={(2*\xgap,0)}]
\begin{scope}
\clip ({\R*cos(\cOne)},{\R*sin(\cOne)}) arc (\cOne:\cTwo+360:\R) -- ({\r*cos(\cTwo+360)},{\r*sin(\cTwo+360)}) arc (\cTwo+360:\cOne:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2}{\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
\begin{scope}
\clip (0,0) -- ({\r*cos(\cOne)},{\r*sin(\cOne)}) arc (\cOne:\cTwo+360:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\R*cos(\cOne)},{\R*sin(\cOne)}) arc (\cOne:\cTwo+360:\R) -- cycle;
\draw[thick] (0,0) -- ({\r*cos(\cOne)},{\r*sin(\cOne)}) arc (\cOne:\cTwo+360:\r) -- cycle;
\end{scope}
% ---------- 第二行:仅内圆 (A_i ∩ B) ----------
% --- A1∩B ---
\begin{scope}[shift={(0,\ygap)}]
\begin{scope}
\clip (0,0) -- ({\r*cos(\aOne)},{\r*sin(\aOne)}) arc (\aOne:\aTwo:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\r*cos(\aOne)},{\r*sin(\aOne)}) arc (\aOne:\aTwo:\r) -- cycle;
\end{scope}
% --- A2∩B ---
\begin{scope}[shift={(\xgap,\ygap)}]
\begin{scope}
\clip (0,0) -- ({\r*cos(\bOne)},{\r*sin(\bOne)}) arc (\bOne:\bTwo:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\r*cos(\bOne)},{\r*sin(\bOne)}) arc (\bOne:\bTwo:\r) -- cycle;
\end{scope}
% --- A3∩B ---
\begin{scope}[shift={(2*\xgap,\ygap)}]
\begin{scope}
\clip (0,0) -- ({\r*cos(\cOne)},{\r*sin(\cOne)}) arc (\cOne:\cTwo+360:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\r*cos(\cOne)},{\r*sin(\cOne)}) arc (\cOne:\cTwo+360:\r) -- cycle;
\end{scope}
% ---------- 第三行:仅外环 (A_i \ B) (已修正) ----------
% ----- A1外 (修正) -----
\begin{scope}[shift={(0,2*\ygap)}]
% 1. 标准方法:精确剪裁环形区域并填充
\begin{scope}
\clip ({\R*cos(\aOne)},{\R*sin(\aOne)}) arc (\aOne:\aTwo:\R) -- ({\r*cos(\aTwo)},{\r*sin(\aTwo)}) arc (\aTwo:\aOne:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2} {\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
% 2. 绘制边界
\draw[thick] ({\R*cos(\aOne)},{\R*sin(\aOne)}) arc (\aOne:\aTwo:\R) -- ({\r*cos(\aTwo)},{\r*sin(\aTwo)}) arc (\aTwo:\aOne:\r) -- cycle;
\end{scope}
% ----- A2外 (修正) -----
\begin{scope}[shift={(\xgap,2*\ygap)}]
\begin{scope}
\clip ({\R*cos(\bOne)},{\R*sin(\bOne)}) arc (\bOne:\bTwo:\R) -- ({\r*cos(\bTwo)},{\r*sin(\bTwo)}) arc (\bTwo:\bOne:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2} {\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
\draw[thick] ({\R*cos(\bOne)},{\R*sin(\bOne)}) arc (\bOne:\bTwo:\R) -- ({\r*cos(\bTwo)},{\r*sin(\bTwo)}) arc (\bTwo:\bOne:\r) -- cycle;
\end{scope}
% ----- A3外 (修正) -----
\begin{scope}[shift={(2*\xgap,2*\ygap)}]
\begin{scope}
\clip ({\R*cos(\cOne)},{\R*sin(\cOne)}) arc (\cOne:\cTwo+360:\R) -- ({\r*cos(\cTwo+360)},{\r*sin(\cTwo+360)}) arc (\cTwo+360:\cOne:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2} {\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
\draw[thick] ({\R*cos(\cOne)},{\R*sin(\cOne)}) arc (\cOne:\cTwo+360:\R) -- ({\r*cos(\cTwo+360)},{\r*sin(\cTwo+360)}) arc (\cTwo+360:\cOne:\r) -- cycle;
\end{scope}
\end{tikzpicture}
\end{document}3. 图示关系
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=0.8]
% ----------- 全局参数 -----------
\def\R{1.3} \def\r{0.7}
\def\dx{-2.2} \def\dy{-2.2}
% 为方便,只用一个扇区 A_1 的角度
\def\angStart{90} \def\angEnd{210}
% ----------- 布局参数 -----------
\def\scl{0.9} % 全局缩放
\def\hgap{1.5} % 组件的水平中心间隔
\def\vgap{1.5} % 组件的垂直中心间隔
% ==================== LHS: P(A_i|B) ====================
\node at (-4.2, 0) [scale=1.2] {$P(A_i|B)$};
\node at (-2.6, 0) [scale=1.2] {$=$};
% ----------- 第一个分数: (A_i ∩ B) / B -----------
\begin{scope}[shift={(-0.8, 0)}]
% --- 分子: A_i ∩ B ---
\begin{scope}[shift={(0,\vgap)}, scale=\scl]
\begin{scope} % 蓝竖线填充
\clip (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\end{scope}
% --- 分母: B ---
\begin{scope}[shift={(0,-\vgap)}, scale=\scl]
\begin{scope} % 蓝竖线填充
\clip (0,0) circle (\r);
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) circle (\r);
\end{scope}
% 分数线
\draw[thick] (-1.2, 0) -- (1.2, 0);
\end{scope}
% ==================== RHS: [P(A_i)] * [P(B|A_i)] ====================
\node at (1.4, 0) [scale=1.2] {$=$};
% ----------- 第二个分数: P(A_i) = A_i / Ω -----------
\begin{scope}[shift={(1.4 + \hgap, 0)}]
% --- 分子: A_i ---
\begin{scope}[shift={(0,\vgap)}, scale=\scl]
% 红横线 (外环)
\begin{scope}
\clip ({\R*cos(\angStart)},{\R*sin(\angStart)}) arc (\angStart:\angEnd:\R) -- ({\r*cos(\angEnd)},{\r*sin(\angEnd)}) arc (\angEnd:\angStart:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2}{\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
% 蓝竖线 (交集)
\begin{scope}
\clip (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
% 边界
\draw[thick] (0,0) -- ({\R*cos(\angStart)},{\R*sin(\angStart)}) arc (\angStart:\angEnd:\R) -- cycle;
\draw[thick] (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\end{scope}
% --- 分母: Ω (符号已居中) ---
\begin{scope}[shift={(0,-\vgap)}, scale=\scl]
\draw[thick] (-\R,-\R) rectangle (\R,\R);
\node at (0,0) {$\Omega$};
\end{scope}
% 分数线
\draw[thick] (-1.2, 0) -- (1.2, 0);
\end{scope}
% --- 乘号 ---
\node at (1.4 + \hgap + 2.2, 0) [scale=1.5] {$\cdot$};
% ----------- 第三个分数: P(B|A_i) = (A_i ∩ B) / A_i -----------
\begin{scope}[shift={(1.4 + \hgap + 2.2 + \hgap, 0)}]
% --- 分子: A_i ∩ B ---
\begin{scope}[shift={(0,\vgap)}, scale=\scl]
\begin{scope} % 蓝竖线填充
\clip (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
\draw[thick] (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\end{scope}
% --- 分母: A_i ---
\begin{scope}[shift={(0,-\vgap)}, scale=\scl]
% 红横线 (外环)
\begin{scope}
\clip ({\R*cos(\angStart)},{\R*sin(\angStart)}) arc (\angStart:\angEnd:\R) -- ({\r*cos(\angEnd)},{\r*sin(\angEnd)}) arc (\angEnd:\angStart:\r) -- cycle;
\foreach \y in {-2,-1.8,...,2}{\draw[red,thin] (\dx,\y) -- (-\dx,\y);}
\end{scope}
% 蓝竖线 (交集)
\begin{scope}
\clip (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\foreach \x in {-2,-1.8,...,2}{\draw[blue,thin] (\x,\dy) -- (\x,-\dy);}
\end{scope}
% 边界
\draw[thick] (0,0) -- ({\R*cos(\angStart)},{\R*sin(\angStart)}) arc (\angStart:\angEnd:\R) -- cycle;
\draw[thick] (0,0) -- ({\r*cos(\angStart)},{\r*sin(\angStart)}) arc (\angStart:\angEnd:\r) -- cycle;
\end{scope}
% 分数线
\draw[thick] (-1.2, 0) -- (1.2, 0);
\end{scope}
\end{tikzpicture}
\end{document}推导
贝叶斯定理的推导基于条件概率的定义。对于任意事件 和 :
以及
将第二个式子代入第一个式子的分子,即可得到贝叶斯定理的基本形式:
通常,分母 的值是未知的,但可以利用全概率公式将其展开。如果 是样本空间的一个划分,则:
代入后得到贝叶斯定理的完全形式:
Warning
贝叶斯定理不要求各事件相互独立。如果事件A和B相互独立,则,定理将失去其“更新”意义。
示例
1. 医学诊断
这是一个经典例子,能清晰地展示贝叶斯定理如何“颠覆”我们的直觉。
假设有一种罕见疾病,在总人口中的发病率(先验概率)为 0.1%。现在有一种检测方法,其准确率如下:
- 如果一个人真的有病,检测结果为阳性的概率是 99%(灵敏度)。
- 如果一个人其实没病,但检测结果仍为阳性的概率是 2%(假阳性率)。
现在,小明去检测,结果为阳性。请问小明真的患有这种疾病的概率是多少?
定义事件:
- : 小明患有该疾病。
- : 小明没有该疾病。
- : 检测结果为阳性。
已知的信息:
- (真阳性率)
- (假阳性率)
想求的是: ,即在检测结果为阳性的条件下,小明真的有病的概率。
应用贝叶斯定理:
首先,用全概率公式计算分母 ,即一个随机的人检测结果为阳性的总概率:
现在,可以计算后验概率 :
结论:
即使小明的检测结果为阳性,他真正患病的概率也只有约 4.72%。这个结果与直觉中“检测很准,阳性了肯定有病”的想法大相径庭,也完美地展示了贝叶斯定理在结合先验概率(极低的发病率)和证据(阳性检测结果)后,是如何得出一个更真实的后验判断的。
2. 开车戴表
这是一个极端的例子, 统计了10个人开车,戴表和是否有钱的信息
| 序号 | 开豪车 | 带名表 | 有钱人 |
|---|---|---|---|
| 1 | 1 | 1 | 1 |
| 2 | 1 | 1 | 1 |
| 3 | 1 | 1 | 1 |
| 4 | 1 | 1 | 1 |
| 5 | 1 | 1 | 1 |
| 6 | 1 | 1 | 1 |
| 7 | 1 | 1 | 1 |
| 8 | 0 | 1 | 0 |
| 9 | 0 | 1 | 0 |
| 10 | 0 | 0 | 0 |
计算 ,即在已知某人同时开豪车和带名表的情况下,这个人是有钱人的概率。
首先,可以从数据中统计出相关事件的频次:
- 开豪车且带名表的人数 ():观察数据中“开豪车”和“带名表”两列同时为 1 的情况。
- 开豪车且带名表且是有钱人的人数 ():观察数据中“开豪车”、“带名表”和“有钱人”三列同时为 1 的情况。
从表中统计:
- 开豪车且带名表 ( 且 ):一共 7 人(序号 1 到 7)。
- 开豪车且带名表且是有钱人 ( 且 且 ):也是 7 人(序号 1 到 7)。
现在,可以计算条件概率 :
由于看到这两个事件的人数完全一致,因此:
这意味着在开豪车且带名表的个体中,他们是有钱人的概率是 100%。