概率论研究不确定性,但”不确定”不代表无法分析。概率模型先列出可能结果,再用数值描述不同结果出现的可能性。统计学则从已经观察到的数据反推模型、估计未知参数,或判断某个假设是否可信。

初学概率与统计时,很容易直接开始背排列组合、概率分布和期望值公式,却没有先分清楚样本点、事件、随机变量与观测值之间的差异。这些概念一旦混在一起,后面的条件概率、概率密度、期望值、统计推断与随机过程都会变得很难理解。本文先建立一套可以反复使用的基本语言,再通过掷骰子、身高、质量检测与服务器请求等例子理解它们之间的关系。

1. 从随机试验到概率空间

1.1 随机试验与样本空间

一次操作如果在执行前无法确定结果,就可以视为随机试验(random experiment)。典型例子包括掷一颗骰子并记录点数、抽取一件产品并检查是否合格、记录服务器下一分钟收到的请求数,以及测量一颗电子元件的寿命。概率模型需要清楚定义”一次试验”和”要记录的结果”;含糊的试验定义无法产生含义明确的概率。

随机试验所有可能结果的集合称为样本空间(sample space),通常记为 Ω\Omega;样本空间中的单个结果记为 ω\omega。掷一颗六面骰子的样本空间是 Ω={1,2,3,4,5,6}\Omega=\{1,2,3,4,5,6\}。掷两颗可区分的骰子时,可以用 Ω={(i,j):i,j∈{1,2,3,4,5,6}}\Omega=\{(i,j):i,j\in\{1,2,3,4,5,6\}\} 表示 36 个有序结果。(1,6)(1,6) 与 (6,1)(6,1) 是不同结果,虽然两个结果的点数和都是 7。

样本空间也可以是无限集合。重复掷硬币直到第一次正面,可以用 {1,2,3,… }\{1,2,3,\dots\} 表示等待次数;电子元件寿命可以用 [0,∞)[0,\infty) 表示;一段时间内的温度曲线则需要用函数集合表示。有限样本空间适合用计数处理,连续或函数型样本空间需要密度、积分和测度等工具。

1.2 事件与集合运算

事件(event)是样本空间的子集合。掷一颗骰子时,令 A={2,4,6}A=\{2,4,6\} 表示”点数为偶数”,令 B={4,5,6}B=\{4,5,6\} 表示”点数大于 3”。观测结果落在事件集合内,就表示事件发生。

集合表示事件含义
A∩BA\cap BAA 与 BB 同时发生
A∪BA\cup BAA 或 BB 至少一个发生
AcA^cAA 不发生
A∖BA\setminus BAA 发生但 BB 不发生
A∩B=∅A\cap B=\varnothingAA 与 BB 不可能同时发生

上例满足 A∩B={4,6}A\cap B=\{4,6\},因此”偶数且大于 3”包含点数 4 和 6。

有限样本空间通常可以把所有子集合都当作事件。无限样本空间中存在无法一致赋予概率的病态集合,因此严格的概率模型会指定一个事件集合族 F\mathcal F。F\mathcal F 对补集与可数并集封闭,称为 σ\sigma-代数。初学阶段可以把 F\mathcal F 理解为模型允许询问并能赋予概率的事件集合。

1.3 概率测度与等可能假设

概率测度 PP 把事件 A∈FA\in\mathcal F 映射成 [0,1][0,1] 内的数值。柯尔莫哥洛夫公理要求非负性 P(A)≥0P(A)\ge 0、规范化 P(Ω)=1P(\Omega)=1,以及互斥事件的可数可加性。三元组 (Ω,F,P)(\Omega,\mathcal F,P) 称为概率空间(probability space)。

公理可以推出 P(Ac)=1−P(A)P(A^c)=1-P(A) 和 P(A∪B)=P(A)+P(B)−P(A∩B)P(A\cup B)=P(A)+P(B)-P(A\cap B)。并集公式减去交集,因为直接把 P(A)P(A) 与 P(B)P(B) 相加会重复计算交集。

有限样本空间中的基本结果若等可能,便可使用 P(A)=∣A∣/∣Ω∣P(A)=|A|/|\Omega|。两颗公平骰子的 36 个有序结果等可能,而点数和并不等可能。和为 7 有 (1,6),(2,5),(3,4),(4,3),(5,2),(6,1)(1,6),(2,5),(3,4),(4,3),(5,2),(6,1) 六种结果,所以 P(D1+D2=7)=6/36=1/6P(D_1+D_2=7)=6/36=1/6;和为 2 只有 (1,1)(1,1) 一种结果。把 2 到 12 当成 11 个等可能的和会得到错误答案。

计数公式不能套用到不均匀骰子、故障率不同的元件或连续测量。使用排列组合之前,必须先确认有限与等可能假设。

2. 随机变量与分布

2.1 随机变量是函数

随机变量(random variable)不是一个随机改变的符号,而是从样本空间映射到数值集合的函数,写成 X:Ω→RX:\Omega\rightarrow\mathbb R。在两颗骰子的实验中,可以定义 X(i,j)=i+jX(i,j)=i+j。基本结果是 (2,5)(2,5),随机变量的观测值则是 X(2,5)=7X(2,5)=7。

同一个样本空间可以定义多个随机变量,例如点数和、最大点数、两颗骰子的差,或第一颗骰子是否为偶数。随机变量让研究者忽略不需要的试验细节,只保留问题关心的数量。

2.2 离散随机变量与 PMF

离散随机变量(discrete random variable)的可能取值有限或可数,例如骰子点数、一分钟内的服务器请求数、一批产品中的瑕疵品数量,或某段时间内的故障次数。

离散随机变量可以直接为每一个可能取值指定概率,这个函数称为概率质量函数(probability mass function, PMF):

pX(x)=P(X=x).p_X(x)=P(X=x).

例如 XX 表示两颗公平骰子的点数和,则 P(X=2)=1/36P(X=2)=1/36,而 P(X=7)=6/36=1/6P(X=7)=6/36=1/6。因为同一个 XX 值可能由很多不同样本点产生,所以计算 PMF 时,需要把所有能映射到该值的基本结果概率加起来:

P(X=x)=∑ω:X(ω)=xP({ω}).P(X=x)=\sum_{\omega:X(\omega)=x}P(\{\omega\}).

对离散型随机变量而言,一个具体取值本身可以具有正概率,例如 P(X=7)=1/6>0P(X=7)=1/6>0,而所有可能值的概率总和必须等于 1:

∑xpX(x)=1.\sum_x p_X(x)=1.

连续随机变量的情况则不同。

2.3 连续随机变量:为什么单点概率为 0

考虑一个人的身高 XX。直觉上,一个人最后当然会有某一个具体身高,例如测量得到 X=170.2X=170.2 cm。因此很容易产生一个疑问:如果最后观察到的身高明明是一个具体数值,为什么连续随机变量却满足 P(X=170.2)=0P(X=170.2)=0?

关键在于区分两件事:一次实验最后确实会产生某个值,以及事先指定某一个精确实数,它所对应的概率是多少。

如果把身高理想化为连续量,那么在 170 cm 与 171 cm 之间,并不是只有有限个可能值,而是存在无限多个实数。更重要的是,无论选择两个多么接近的不同实数,它们之间仍然存在无限多个实数。因此,连续分布不能像离散分布那样,把总概率 1 分配给一个个孤立的点。

对具有概率密度函数的连续型随机变量,

P(X=x)=0P(X=x)=0

对任意单一的 xx 都成立。但这里需要特别注意:概率为 0 不等于事件不可能发生。 一次实验最后仍然一定会得到某个具体实数,只是如果在实验之前事先指定一个具有无限精度的实数,例如 170.234817291…170.234817291\dots,那么随机变量恰好等于这个精确数值的概率为 0。

可以从不断缩小区间来理解这件事。例如先问

P(170≤X≤171),P(170\le X\le171),

这是一个具有宽度的区间,因此可能具有正概率。再把范围缩小成 P(170.2≤X≤170.3)P(170.2\le X\le170.3),再缩小成 P(170.20≤X≤170.21)P(170.20\le X\le170.21)。区间宽度越来越小,其中包含的概率通常也会越来越小。当区间宽度趋近于 0,只剩下一个点时,其概率也趋近于 0。

现实中的测量还存在另一个重要因素:测量精度有限。例如身高计显示 170.2170.2 cm,并不代表我们知道真实身高恰好是数学上的 170.200000…170.200000\dots cm。如果仪器四舍五入到 0.10.1 cm,那么读数 170.2170.2 cm 实际上可能代表真实身高位于大约

170.15≤X<170.25170.15\le X<170.25

的区间内。所以现实世界看到的一个“具体测量值”,通常已经隐含了一个由有限测量精度形成的小区间。

2.4 PDF:密度不是概率

连续型随机变量通常使用概率密度函数(probability density function, PDF) fX(x)f_X(x) 描述其分布。这里最重要的一点是

fX(x)≠P(X=x).f_X(x)\neq P(X=x).

PDF 的值本身不是“取到 xx 的概率”,而是表示 xx 附近的概率有多密集。真正的概率需要对一段区间积分:

P(a≤X≤b)=∫abfX(x) dx.P(a\le X\le b)=\int_a^b f_X(x)\,dx.

如果 Δx\Delta x 很小,那么一个很窄区间中的概率可以近似写成

P(x≤X≤x+Δx)≈fX(x)Δx.P(x\le X\le x+\Delta x)\approx f_X(x)\Delta x.

因此,可以把 fX(x)f_X(x) 理解成“单位长度上的概率密度”。密度越高,代表这附近的概率越集中;区间越宽,累积起来的概率通常也越大。

假设现在想计算 P(a≤X≤b)P(a\le X\le b),可以先把 [a,b][a,b] 切成很多很窄的小区间,每一个小区间宽度都是 Δx\Delta x。第 ii 个小区间中的概率大约是 fX(xi)Δxf_X(x_i)\Delta x,因此整个区间的概率可以近似成

∑ifX(xi)Δx.\sum_i f_X(x_i)\Delta x.

这其实就是一个 Riemann sum。当区间切得越来越细、Δx→0\Delta x\rightarrow0 时,这个求和的极限就变成积分:

P(a≤X≤b)=lim⁡Δx→0∑ifX(xi)Δx=∫abfX(x) dx.P(a\le X\le b) = \lim_{\Delta x\to0}\sum_i f_X(x_i)\Delta x = \int_a^b f_X(x)\,dx.

因此,PDF 图形下面的面积才是概率。

这也能直接解释为什么单点概率为 0。如果区间退化成一个点 [x,x][x,x],那么区间宽度就是 0,因此

P(X=x)=∫xxfX(u) du=0.P(X=x)=\int_x^x f_X(u)\,du=0.

所以对具有 PDF 的连续型随机变量,

P(a<X<b)=P(a≤X<b)=P(a<X≤b)=P(a≤X≤b).P(a<X<b) = P(a\le X<b) = P(a<X\le b) = P(a\le X\le b).

是否包含端点并不会改变概率,因为每一个端点本身的概率都是 0。这与离散随机变量非常不同。例如骰子点数满足 P(X=3)=1/6P(X=3)=1/6,因此是否包含某个端点可能直接改变事件概率。

另一个常见误解是认为 PDF 的值也必须介于 0 和 1。实际上,PDF 本身完全可以大于 1。假设

fX(x)={2,0≤x≤0.5,0,otherwise,f_X(x)= \begin{cases} 2,&0\le x\le0.5,\\ 0,&\text{otherwise}, \end{cases}

虽然密度值为 2,但总概率仍然是

∫00.52 dx=1.\int_0^{0.5}2\,dx=1.

因此,真正受到 [0,1][0,1] 限制的是积分得到的概率,而不是密度值本身。PDF 的两个基本要求是

fX(x)≥0f_X(x)\ge0

以及

∫−∞∞fX(x) dx=1.\int_{-\infty}^{\infty}f_X(x)\,dx=1.

2.5 CDF:统一离散与连续随机变量

任意实值随机变量都能使用累积分布函数(CDF) FX(x)=P(X≤x)F_X(x)=P(X\le x)。CDF 单调不减,并满足 lim⁡x→−∞FX(x)=0\lim_{x\to-\infty}F_X(x)=0 与 lim⁡x→∞FX(x)=1\lim_{x\to\infty}F_X(x)=1。离散变量的 CDF 呈阶梯状;如果连续变量具有 PDF,则 FX(x)=∫−∞xfX(u) duF_X(x)=\int_{-\infty}^{x}f_X(u)\,du。

对离散型随机变量而言,CDF 通常呈阶梯状。某一个点 xx 如果具有正概率,那么 CDF 在 xx 处就会向上跳跃,跳跃高度正好是该点的概率:

P(X=x)=FX(x)−FX(x−).P(X=x)=F_X(x)-F_X(x^-).

如果连续型随机变量具有 PDF,并且 FXF_X 可以微分,则反过来可以得到

fX(x)=FX′(x).f_X(x)=F_X'(x).

因此可以把 PMF、PDF 与 CDF 的角色整理成:

函数直觉
PMF pX(x)p_X(x)离散点 xx 本身有多少概率
PDF fX(x)f_X(x)xx 附近的概率有多密集
CDF FX(x)F_X(x)到 xx 为止已累积多少概率

离散型随机变量的概率通常通过加总得到:

P(X∈A)=∑x∈ApX(x).P(X\in A)=\sum_{x\in A}p_X(x).

具有 PDF 的连续型随机变量则通过积分得到:

P(X∈A)=∫AfX(x) dx.P(X\in A)=\int_A f_X(x)\,dx.

形式虽然不同,但它们本质上都在描述同一件事:概率如何分布在随机变量的不同可能取值上。

3. 条件概率、独立性与贝叶斯定理

3.1 条件概率缩小样本范围

观察到事件 BB 已经发生后,事件 AA 的条件概率定义为 P(A∣B)=P(A∩B)/P(B)P(A\mid B)=P(A\cap B)/P(B),其中 P(B)>0P(B)>0。条件概率把分析范围限制在 BB 内,再用 P(B)P(B) 重新规范化概率。

以两颗公平骰子为例,令 AA 表示”点数和为 8”,令 BB 表示”第一颗骰子为偶数”。事件 BB 含有 18 个等可能结果;同时符合 AA 与 BB 的结果为 (2,6),(4,4),(6,2)(2,6),(4,4),(6,2),所以 P(A∣B)=3/18=1/6P(A\mid B)=3/18=1/6。如果不知道第一颗骰子的奇偶性,则和为 8 有五个结果,P(A)=5/36P(A)=5/36。额外信息改变了可比较的结果集合,因此也改变事件概率。

乘法公式 P(A∩B)=P(A∣B)P(B)P(A\cap B)=P(A\mid B)P(B) 可以延伸到多个事件。对事件序列 A1,…,AnA_1,\dots,A_n,联合概率可以分解为逐步条件概率的乘积。机器学习的自回归模型也使用相同的 chain rule,把 token 序列的联合概率拆成每个 token 在先前 token 条件下的概率。

3.2 独立性是联合分布的条件

事件 AA 与 BB 独立时满足 P(A∩B)=P(A)P(B)P(A\cap B)=P(A)P(B)。若 P(B)>0P(B)>0,等价条件是 P(A∣B)=P(A)P(A\mid B)=P(A):得知 BB 发生不会改变 AA 的概率。

互斥与独立具有不同含义。两个具有正概率的互斥事件不可能同时发生,所以 P(A∩B)=0P(A\cap B)=0,但 P(A)P(B)>0P(A)P(B)>0;互斥事件因此不独立。独立性也不能只靠直觉宣称,必须来自抽样设计、生成机制或可以检验的联合分布假设。

多个事件的两两独立只要求每一对事件的联合概率可以分解;相互独立还要求任意子集合的联合概率都能分解。相互独立一定推出两两独立,反向推论通常不成立。

3.3 全概率公式与贝叶斯定理

若 B1,…,BmB_1,\dots,B_m 两两互斥且并集为整个样本空间,则事件 AA 的概率可以按不同来源拆分:P(A)=∑iP(A∣Bi)P(Bi)P(A)=\sum_iP(A\mid B_i)P(B_i)。该公式称为全概率公式。

贝叶斯定理反转条件方向:P(Bj∣A)=P(A∣Bj)P(Bj)/P(A)P(B_j\mid A)=P(A\mid B_j)P(B_j)/P(A)。分子由似然 P(A∣Bj)P(A\mid B_j) 与先验概率 P(Bj)P(B_j) 组成,分母把所有可能来源的联合概率加总,使后验概率总和等于 1。

假设某疾病患病率为 1%,检测对患者的阳性率为 95%,对非患者的假阳性率为 5%。令 DD 表示患病,令 ++ 表示阳性。阳性的总概率为 P(+)=0.95×0.01+0.05×0.99=0.059P(+)=0.95\times0.01+0.05\times0.99=0.059,所以阳性后真正患病的概率为 P(D∣+)=0.95×0.01/0.059≈0.161P(D\mid +)=0.95\times0.01/0.059\approx0.161。检测灵敏度很高,阳性者的患病概率仍只有约 16.1%,原因是非患者人数远多于患者,5% 假阳性会累积出大量阳性结果。

贝叶斯计算需要同时保留基准率与检测条件概率。只看 P(+∣D)P(+\mid D) 并把 95% 误认为 P(D∣+)P(D\mid +),就是常见的条件方向错置。

4. 小结:概率空间是后续主题共用的语言

一个完整的概率模型可以写成 (Ω,F,P)(\Omega,\mathcal F,P)。其中 Ω\Omega 描述所有可能的基本结果,F\mathcal F 描述哪些结果集合可以作为事件,而 PP 为这些事件指定概率。在此基础上,随机变量 X:Ω→RX:\Omega\rightarrow\mathbb R 再把完整的随机结果映射成我们真正想分析的数值。

随机试验

样本空间 Ω

样本点 ω

事件 A ⊆ Ω

概率 P(A)

随机变量 X(ω)

离散随机变量

连续随机变量

PMF p(x)

PDF f(x)

CDF F(x)

随机试验

样本空间 Ω

样本点 ω

事件 A ⊆ Ω

概率 P(A)

随机变量 X(ω)

离散随机变量

连续随机变量

PMF p(x)

PDF f(x)

CDF F(x)

离散型随机变量使用 PMF 描述一个个取值上的概率:

pX(x)=P(X=x).p_X(x)=P(X=x).

具有概率密度的连续型随机变量则使用 PDF 描述概率在不同位置附近有多集中:

P(a≤X≤b)=∫abfX(x) dx.P(a\le X\le b)=\int_a^b f_X(x)\,dx.

对具有 PDF 的连续型随机变量而言,P(X=x)=0P(X=x)=0,但这不代表某个具体值不可能被观察到。它只表示单一数学点没有宽度,因此不能包含正的概率面积。CDF

FX(x)=P(X≤x)F_X(x)=P(X\le x)

则进一步把离散与连续分布放进同一套语言中。

条件概率描述得到新信息之后如何重新计算概率;独立性描述一个事件是否会改变另一个事件的概率;全概率公式与 Bayes 定理则提供了在不同条件与信息之间转换的方法。理解这套语言之后,后面的期望值、方差、联合分布、统计推断与随机过程,其实都只是建立在这些概念之上的延伸。

读者可以接着阅读随机过程 1:什么是随机过程,把随机变量延伸成带索引的随机变量族;计数型应用可参考随机过程 9:泊松过程。