Chapter 2 概率论:单变量模型

931 阅读30分钟

2.1    介绍

在这一章中,我们简要介绍了概率论的基础知识。

2.1.1    什么是概率?

  概率论不过是简化为计算的常识。  ——皮埃尔·拉普拉斯,1812年

  我们都很乐意说一枚(公平的)硬币落到人头上的概率是 50%50\% 。但这意味着什么呢?概率其实有两种不同的解释。一种叫做频率解释。在这种观点中,概率代表可能发生多次的事件的长期频率。例如,上面的陈述意味着,如果我们多次抛硬币,我们期望它大约有一半的次数正面朝上落下


实际上,斯坦福大学的统计学家(也是前专业魔术师)佩尔西·戴康尼斯已经表明,由于问题的物理性质,一枚硬币大约有 51%51\% 的可能以与开始时相同的姿态(硬币的一面)朝上落下。


  另一种解释叫做概率的贝叶斯解释。在这种观点中,概率被用来量化我们对某事的不确定性或无知(ignorance);因此,它基本上与信息有关,而不是重复试验。在贝叶斯的观点中,上面的陈述意味着我们相信硬币在下一次投掷中有同样的可能性正面或反面着地。
  贝叶斯解释的一大优势是,它可以用来模拟我们对没有长期频率的一次性事件的不确定性。例如,我们可能想计算极地冰盖在2030年融化的概率。这个事件会发生零次或一次,但不能重复发生。然而,我们应该能够量化我们对这一事件的不确定性;根据我们认为这一事件发生的可能性,我们可以决定如何采取最佳行动,如第5章所述。因此,我们将在本书中采用贝叶斯解释。幸运的是,无论采用哪种解释,概率论的基本规则都是一样的。

2.1.2    不确定性的类型

我们预测的不确定性可能有两个根本不同的原因。 第一个原因是我们对产生数据的潜在隐藏原因或机制一无所知。 这被称为认知不确定性,因为认识论是用于描述知识研究的哲学术语。 然而,一个更简单的术语是模型不确定性。 第二种不确定性来自内在可变性,即使我们收集更多数据也无法减少。这有时被称为任意不确定性,源自拉丁语“骰子”,尽管更简单的术语是数据不确定性。 作为一个具体的例子,考虑扔一枚公平的硬币。 我们可能肯定知道正面朝上的概率是 p=0.5p=0.5 ,所以不存在认知上的不确定性,但我们仍然不能完美地预测结果。
  这种区别对于主动学习等应用非常重要。典型的策略是查询 H(p(yx,D))\mathbb H(p(y|\textbf x,\mathcal D)) 较大的示例(其中 H(p)\mathbb H(p) 是熵,在第6.1节中讨论)。然而,这可能是由于参数的不确定性,即大的 H(p(θD))\mathbb H(p(\pmb\theta\vert\mathcal D)) ,或者仅仅是由于固有的标签噪声或可变性,对应于 p(yx,θ)p(y|\textbf x,\pmb θ) 的大熵(large entropy)。

2.1.3    概率是逻辑的延伸

在本节中,我们回顾了概率的基本规则,在E.T.Jaynes.的Probability theory:the logic of science的介绍之后,我们将概率视为布尔逻辑的扩展。

2.1.3.1    事件发生的概率

我们定义一个事件,用二进制变量 AA 表示,作为世界的某种状态,要么成立,要么不成立。例如,AA 可能是事件“明天会下雨”,或“昨天下雨”,或“标签为 y=1y=1 ”,或“参数 θθ1.51.52.02.0 之间”等。表达式 Pr(A)\Pr(A) 表示你相信事件 AA 为真的概率(或事件 AA 发生的长时间的频率分数)。我们要求 0Pr(A)10\le\Pr(A)\le1 ,其中 Pr(A)=0\Pr(A)=0 表示事件肯定不会发生,Pr(A)=1\Pr(A)=1 表示事件肯定会发生。我们写 Pr(A)Pr(\overline A) 来表示事件 AA 不发生的概率;这被定义为 Pr(A)=1Pr(A)\Pr(\overline A)=1-\Pr(A)

2.1.3.2    两个事件同时发生的概率

我们表示事件 AABB 同时发生的联合概率如下:

Pr(AB)=Pr(A,B)(2.1)\Pr(A\wedge B)=\Pr(A,B)\quad\quad\quad\quad\quad\quad(2.1)

如果 AABB 是独立事件,我们有

Pr(A,B)=Pr(A)Pr(B)(2.2)\Pr(A,B)=\Pr(A)\Pr(B)\quad\quad\quad\quad\quad\quad(2.2)

例如,假设从集合 X={1,2,3,4}\mathcal X=\{1,2,3,4\} 中均匀随机地选择 XXYY 。设 AAX{1,2}X\in\{1,2\} 的事件,BBY{3}Y\in\{3\} 的事件。那么我们有 Pr(A,B)=Pr(A)Pr(B)=1214\Pr(A,B)=\Pr(A)\Pr(B)=\frac12\cdot\frac14

2.1.3.3    两个事件的联合概率

事件 AABB 发生的概率由下式给出

Pr(AB)=Pr(A)+Pr(B)Pr(AB)(2.3)\Pr(A\vee B)=\Pr(A)+\Pr(B)-\Pr(A\wedge B)\quad\quad\quad\quad\quad\quad(2.3)

如果事件是互斥的(因此它们不能同时发生),我们得到

Pr(AB)=Pr(A)+Pr(B)(2.4)\Pr(A\vee B)=\Pr(A)+\Pr(B)\quad\quad\quad\quad\quad\quad(2.4)

例如,假设从集合 X={1,2,3,4}\mathcal X=\{1,2,3,4\} 中统一随机选择 XX 。设 AAX{1,2}X\in\{1,2\} 的事件,BBX{3}X\in\{3\} 的事件。那么我们有 Pr(AB)=24+14\Pr(A\wedge B)=\frac24+\frac14

2.1.3.4    一个事件在给定另一个事件时的条件概率

假设 AA 已经发生,我们定义事件B发生的条件概率如下:

Pr(BA)=Pr(A,B)Pr(A)(2.5)\Pr(B\vert A)\overset{\triangle}{=}\frac{\Pr(A,B)}{\Pr(A)}\quad\quad\quad\quad\quad\quad(2.5)

如果 Pr(A)=0\Pr(A)=0 ,这是没有定义的,因为我们不能以不可能的事件为条件。

2.1.3.5    事件的条件独立性

我们说事件 AA 是条件独立于事件 BB 的,需要满足

Pr(AB)=Pr(A)(2.6)\Pr(A\vert B)=\Pr(A)\quad\quad\quad\quad\quad\quad(2.6)

当然这是对称关系,所以我们也有 Pr(BA)=Pr(B)\Pr(B\vert A)=\Pr(B) 。因此 Pr(A,B)=Pr(A)Pr(B)\Pr(A,B)=\Pr(A)\Pr(B) 。我们用符号 ABA\perp B 来表示这个性质。
  如果 Pr(AB,C)=Pr(AC)\Pr(A\vert B,C)=\Pr(A\vert C) ,则可以说给定第三个事件 CC ,两个事件 AABB 是条件独立的。等价地,我们可以把这个写成 Pr(A,BC)=Pr(AC)Pr(BC)\Pr(A,B\vert C)=\Pr(A\vert C)\Pr(B\vert C) 。这是写作 ABC{A\perp B}\vert C 写的。
  例如,假设 AA 是事件“烟雾探测器发出警报”,BB 是事件“附近有火”,CC 是事件“附近有烟”。显然 AABB 相互依赖,但 ABC{A\perp B}\vert C ,因为如果附近有烟雾(即事件 CC 为真),探测器将发出警报,而不管是否有火灾。事件通常是相互依赖的,但是如果我们以相关的中间变量为条件,则可能会呈现为独立的,正如我们在本章后面更详细讨论的那样。

2.2    随机变量

假设 XX 代表某个未知的感兴趣的量,比如我们掷骰子时骰子会落向哪个方向,或者当前时间你家屋外的温度。如果 XX 的值未知 和/或 可能改变,我们称之为随机变量(random variable)rv。表示为 X\mathcal X 的一组可能值被称为样本空间状态空间事件是来自给定样本空间的一组结果。例如,如果 XX 代表掷骰子的正面,那么 X={1,2,,6}\mathcal X=\{1,2,\dots,6\} ,把“看到一个 11 ”的事件表示为 X=1X=1 ,“看到一个奇数”的事件表示为 X{1,3,5}X\in\{1,3,5\} ,“看到一个 1133 之间的数”的事件表示为 1X31\le X\le3 等。

2.2.1    离散随机变量

如果样本空间 X\mathcal X 是有限的或可数无限的,则 XX 称为离散随机变量。在这种情况下,我们用 Pr(X=x)\Pr(X=x) 表示 XX 具有值 xx 的事件的概率。我们将概率质量函数(probability mass function)pmf 定义为计算事件概率的函数,这些事件对应于将随机变量设置为每个可能的值:

p(x)=Pr(X=x)(2.7)p(x)\overset{\triangle}{=}\Pr(X=x)\quad\quad\quad\quad\quad\quad(2.7)

pmf 满足性质 0p(x)10\le p(x)\le1xXp(x)=1\sum_{_{x\in X}}p(x)=1
  如果 XX 有有限数量的值,比如 KK ,pmf 可以表示为 KK 个数字的列表,我们可以将其绘制为直方图。例如,图2.1显示了在 X={1,2,3,4}\mathcal X=\{1,2,3,4\} 上定义的两个 pmf。左边是均匀分布,p(x)=14p(x)=\frac14 ,右边是退化分布,p(x)=I(x=1)p(x)=\mathbb I(x=1) ,其中 I( )\mathbb I(\ ) 是二元指示函数。因此,图2.1(b)中的分布代表了 XX 总是等于值 11 的事实。(因此我们看到随机变量也可以是常数。)
image.png

图2.1:状态空间 X={1,2,3,4}\mathcal X=\{1,2,3,4\} 上的一些离散分布。(a)p(x=k)=14p(x=k)=\frac14 的均匀分布。(b)一个退化的(degenerate )分布(delta函数),它把所有的质量放在 x=1x=1 上。由figures.probml.ai/book1/2.1的代码生成。

2.2.2    连续随机变量

如果 XRX\in\mathcal R 是实值量,则称为连续随机变量。在这种情况下,我们不能再创建一个有限的(或可数的)可能值的集合。然而,我们可以把实线分成可数个区间。如果我们将事件与每个区间中的 XX 相关联,我们可以使用上面讨论的离散随机变量的方法。通过允许区间的大小收缩到零,我们可以表示 XX 取特定实值的概率,如下所示。

2.2.2.1    累积分布函数(Cumulative distribution function,cdf)

定义事件 A=(Xa)A=(X\le a)B=(Xb)B=(X\le b)C=(a<Xb)C=(a<X\le b) ,其中 a<ba<b 。我们有 B=ACB=A\vee C ,由于 AACC 是互斥的,求和规则给出

Pr(B)=Pr(A)+Pr(C)(2.8)\Pr(B)=\Pr(A)+\Pr(C)\quad\quad\quad\quad\quad\quad(2.8)

因此在区间 CC 中的概率由下式给出

Pr(C)=Pr(B)Pr(A)(2.9)\Pr(C)=\Pr(B)-\Pr(A)\quad\quad\quad\quad\quad\quad(2.9)

  一般来说,我们定义随机变量 XX累积分布函数(cumulative distribution function)cdf 如下:

P(x)=Pr(Xx)(2.10)P(x)\overset{\triangle}{=}\Pr(X\le x)\quad\quad\quad\quad\quad\quad(2.10)

(注意,我们用一个大写的 PP来表示 cdf。)利用这个,我们可以计算出在任何区间的概率如下:

Pr(a<Xb)=P(b)P(a)(2.11)\Pr(a<X\le b)=P(b)-P(a)\quad\quad\quad\quad\quad\quad(2.11)

  cdf 是单调非递减函数。例子如图2.2a,这里我们说明一个标准正态分布的 cdf,N(x0,1)\mathcal N(x\vert0,1) ;这个 cdf 通常用 Δ(x)\Delta(x) 表示。
image.png

图2.2:(a)标准正态分布,N(01)\mathcal N(0,1) 的cdf图。由figures.probml.ai/book1/2.2的代码生成。阴影区域各自包含概率质量的 α2\frac\alpha2 。因此,非阴影区域包含概率质量的 1α1-\alpha 。最左边的截止点是 Δ1(α2)\Delta^{^{-1}}(\frac\alpha2) ,其中 Δ\Delta 是高斯分布的 cdf。根据对称性,最右边的截止点是 Δ1(1α2)=Δ1(α2)\Delta^{^{-1}}(1-\frac\alpha2)=-\Delta^{^{-1}}(\frac\alpha2) 。由figures.probml.ai/book1/2.2的代码生成。

2.2.2.2    概率密度函数(Probability density function,pdf)

我们将概率密度函数pdf定义为cdf的导数:

p(x)=ddxP(x)(2.12)p(x)\overset{\triangle}{=}\frac{d}{dx}P(x)\quad\quad\quad\quad\quad\quad(2.12)

见图2.2b的例子,我们说明了一元高斯的 pdf。(注意,这个导数并不总是存在的,在这种情况下 pdf 是没有定义的。)
  给定一个 pdf,我们可以计算出一个连续变量处于有限区间的概率,如下所示:

Pr(a<Xb)=abp(x)dx=P(b)P(a)(2.13)\Pr(a<X\le b)=\int^{b}_{a}p(x)dx=P(b)-P(a)\quad\quad\quad\quad\quad\quad(2.13)

随着间隔的变小,我们可以写

Pr(xXx+dx)p(x)dx(2.14)\Pr(x\le X\le x+dx)\approx p(x)dx\quad\quad\quad\quad\quad\quad(2.14)

直觉上,这表示 XXxx 周围的小区间中的概率是 xx 处的密度乘以区间的宽度。

2.2.2.3    分位点(Quantiles)

如果 cdf PP 是严格单调递增的,它就有一个逆函数,称为逆cdf,或百分比点函数(ppf),或分位点函数
  如果 PPXX 的 cdf,那么 P11(q)P^{^{-1}}1(q) 是值 xqx_{_q} ,即 Pr(Xxq)=q\Pr(X\le x_{_q})=q ;这被称为 PP 的第 qq 个分位点。值 P1(0.5)P^{^{-1}}(0.5) 是分布的中值,概率质量的一半在左边,一半在右边。P1(0.25)P^{^{-1}}(0.25)P1(0.75)P^{^{-1}}(0.75) 是上下四分位点
  例如,假设 Φ\Phi 是高斯分布 N(0,1)\mathcal N(0,1) 的 cdf,Φ1\Phi^{^{-1}} 是 cdf 的逆。那么 Φ1(α2)\Phi^{^{-1}}(\frac\alpha2) 左边的点包含概率质量的 α2\frac\alpha2 ,如图2.2b所示。通过对称性, Φ1(1α2)\Phi^{^{-1}}(1-\frac\alpha2) 右边的点也包含质量的 α2\frac\alpha2 。因此,中心区间 (Φ1(α2),Φ1(1α2))(\Phi^{^{-1}}(\frac\alpha2),\Phi^{^{-1}}(1-\frac\alpha2)) 包含质量的 1α1-\alpha 。如果我们设置 α=0.05\alpha=0.05 ,则中间 95%95\% 的区间被范围

(Φ1(0.025),Φ1(0.975))=(1.96,1.96)(2.15)(\Phi^{^{-1}}(0.025),\Phi^{^{-1}}(0.975))=(-1.96,1.96)\quad\quad\quad\quad\quad\quad(2.15)

覆盖。
如果分布为 N(μ,σ2)\mathcal N(\mu,\sigma^{^2}) ,则 9595% 的间隔变为 (μ1.96σ,μ+1.96σ)(\mu-1.96\sigma,\mu+1.96\sigma) 。这通常通过写成 μ±2σ\mu\pm 2\sigma 来近似。

2.2.3    相关随机变量集

在这一节中,我们讨论相关随机变量集合上的分布。
  首先,假设我们有两个随机变量, XXYY 。对于 XXYY 的所有可能值,我们可以使用 p(x,y)=p(X=x,Y=y)p(x,y)=p(X=x,Y=y) 来定义两个随机变量的联合分布。如果两个变量都有有限的基数(cardinality),我们可以将联合分布表示为 22 维的表,其所有条目的总和为 11 。例如,考虑具有两个二进制变量的以下示例:

  p(X,Y)p(X,Y)  Y=0Y=0   Y=1Y=1  
  X=0X=0    0.20.2      0.30.3  
  X=1X=1    0.30.3      0.20.2  

  如果两个变量是条件独立的,我们可以把联合表示为两个边缘的乘积。如果两个变量的基数都是有限的,我们可以将 22 维联合表分解成两个 11 维向量的乘积,如图2.3所示。
  给定联合分布,我们定义随机变量的边缘分布 如下:

p(X=x)=yp(X=x,Y=y)(2.16)p(X=x)=\sum_{y}p(X=x,Y=y)\quad\quad\quad\quad\quad\quad(2.16)

这里我们对 YY 的所有可能状态求和。这有时被称为加和规则总概率规则。我们同样定义 p(Y=y)p(Y=y) 。例如,从上面的 22 维表中,我们看到p(X = 0) = 0.2 + 0.3 = 0.5,p(Y = 0) = 0.2 + 0.3 = 0.5。(术语“边际”来自会计惯例,即在表格的边上或空白处写下行和列的总和。)
  我们使用以下公式定义随机变量的条件分布

p(Y=yX=x)=p(V=x,Y=y)p(X=x)(2.17)p(Y=y\vert X=x)=\frac{p(V=x,Y=y)}{p(X=x)}\quad\quad\quad\quad\quad\quad(2.17)

我们可以重新排列这个方程

p(x,y)=p(x)p(yx)(2.18)p(x,y)=p(x)p(y\vert x)\quad\quad\quad\quad\quad\quad(2.18)

这被称为乘积规则
  通过将乘积法则推广到 DD 个变量,我们得到了概率的链式法则

p(x1:D)=p(x1)p(x2x1)p(x3x1,x2)p(x4x1,x2,x3)p(xDx1:D1)(2.19)p(\textbf x_{_{1:D}})= p(x_{_1})p(x_{_2}\vert x_{_1})p(x_{_3}\vert x_{_1}, x_{_2})p(x_{_4}\vert x_{_1},x_{_2},x_{_3})\dots p(x_{_D}\vert\textbf x_{_{1:D−1}})\quad(2.19)

这提供了一种从一组条件分布创建高维联合分布的方法。我们将在第二节对此进行更详细的讨论。3.6.

2.2.4    独立性和条件独立性

我们说 XXYY无条件独立的边缘独立的,表示为 XYX\perp Y ,如果我们能把联合概率表示为两个边缘概率的乘积(见图2.3),即,

XY  p(X,Y)=p(X)p(Y)(2.20)X\perp Y\ \Longleftrightarrow\ p(X,Y)=p(X)p(Y)\qquad\qquad\qquad\qquad(2.20)

image.png

图2.3:计算 p(x,y)=p(x)p(y)p(x,y)=p(x)p(y) ,其中 XYX\perp Y。这里 XXYY 是离散的随机变量;XX66 种可能的状态(值),YY55 种可能的状态。两个这样的变量的一般联合分布将需要 (6×5)1=29(6×5)-1=29 个参数来定义它(我们减去 11 是因为sum-to-one的约束)。通过假设(无条件)独立性,我们只需要 (61)+(51)=9(6-1)+(5-1)=9 个参数来定义 p(x,y)p(x,y)

一般来说,如果联合概率可以写成边缘概率的乘积,即

p(X1,,Xn)=i=1np(Xi)(2.21)p(X_{_1},\dots,X_{_n})=\prod^{n}_{i=1}p(X_{_i})\qquad\qquad\qquad\qquad(2.21)

那我们说一组变量 X1,,XnX_{_1},\dots,X_{_n}独立的
  不幸的是,无条件独立是罕见的,因为大多数变量可以影响大多数其他变量。然而,通常这种影响是通过其他变量而不是直接的。因此,如果条件联合概率可以写成条件边缘概率的乘积:

XYZ  p(X,YZ)=p(XZ)p(YZ)(2.22)X\perp Y\vert Z\ \Longleftrightarrow\ p(X,Y\vert Z)=p(X\vert Z)p(Y\vert Z)\qquad\qquad\qquad\qquad(2.22)

我们说 XXYY 是在给定条件 ZZ条件独立的(conditionally independent,CI)
我们可以把这个假设写成 XZYX-Z-Y 图,它抓住了 XXYY 之间的所有依赖都是通过 ZZ 来调节的直觉。通过使用更大的图,我们可以定义复杂的联合分布;这些被称为图模型,将在第3.6节中讨论。

2.2.5    分布的矩

在本节中,我们描述了可以从概率分布( pdf 或 pmf )中导出的各种汇总统计信息。

2.2.5.1    分布的均值

  分布中最常见的属性是它的均值期望值,通常用 μ\mu 表示。对于连续随机变量,均值定义如下:

E[X]=Xx p(x)dx(2.23)\mathbb E[X]\overset{\triangle}{=}\int_{\mathcal X}x\ p(x)dx\qquad\qquad\qquad\qquad(2.23)

如果积分不是有限的,则均值没有定义;我们将在后面看到一些这样的例子。
  对于离散随机变量,均值定义如下:

E[X]=xXx p(x)(2.24)\mathbb E[X]\overset{\triangle}{=}\sum_{x\in\mathcal X}x\ p(x)\qquad\qquad\qquad\qquad(2.24)

然而,这只有在 xx 的值以某种方式有序时才有意义(例如,如果它们代表整数计数)。   因为平均值是线性算子,所以我们有

E[aX+b]=aE[X]+b(2.25)\mathbb E[aX+b]=a\mathbb E[X]+b\qquad\qquad\qquad\qquad(2.25)

这叫做期望的线性性质
  对于一组 nn 个随机变量,可以证明它们之和的期望值如下:

E[i=1nXi]=i=1nE[Xi](2.26)\mathbb E\left[\sum^{n}_{i=1}X_{_i}\right]=\sum^{n}_{i=1}\mathbb E[X_{_i}]\qquad\qquad\qquad\qquad(2.26)

如果他们是独立的,他们乘积的期望值由下式给出

E[i=1nXi]=i=1nE[Xi](2.27)\mathbb E\left[\prod^{n}_{i=1}X_{_i}\right]=\prod^{n}_{i=1}\mathbb E[X_{_i}]\qquad\qquad\qquad\qquad(2.27)

2.2.5.2    分布的方差

方差是对概率分布“发散”程度的度量,通常用 σ2σ^2 表示。其定义如下:

V[X]=E[(Xμ)2]=(xμ)2p(x)dx(2.28)=x2p(x)dx+μ2p(x)dx2μxp(x)dx=E[X2]μ2(2.29)\begin{aligned} \mathbb V[X] &\overset{\triangle}{=}\mathbb E[(X-\mu)^2]=\int(x-\mu)^2p(x)dx\qquad\qquad\qquad\qquad\qquad\qquad(2.28)\\ &=\int x^2p(x)dx+\mu^2\int p(x)dx-2\mu\int xp(x)dx=\mathbb E[X^2]-\mu^2\qquad(2.29) \end{aligned}

从中我们得出了有用的结果

E[X2]=σ2+μ2(2.30)\mathbb E[X^2]=\sigma^2+\mu^2\qquad\qquad\qquad\qquad\qquad(2.30)

标准差定义为

std[X]=V[X]=σ(2.31)\text{std}[X]\overset{\triangle}{=}\sqrt{\mathbb V[X]}=\sigma\qquad\qquad\qquad\qquad\qquad(2.31)

这很有用,因为它与 XX 本身具有相同的计量单位。
  随机变量的移位和缩放版本的方差由下式给出

V[aX+b]=a2V[X](2.32)\mathbb V[aX+b]=a^2\mathbb V[X]\qquad\qquad\qquad\qquad\qquad(2.32)

如果我们有一组 nn 个独立的随机变量,它们之和的方差由它们的方差之和给出:

V[i=1nXi]=i=1nV[Xi](2.33)\mathbb V\left[\sum^{n}_{i=1}X_{_i}\right]=\sum^{n}_{i=1}\mathbb V[X_{_i}]\qquad\qquad\qquad\qquad\qquad(2.33)

它们乘积的方差也可以推导出来,如下所示:

V[i=1nXi]=E[(iXi)2](E[iXi])2(2.34)=E[iXi2](iE[Xi])2(2.35)=iE[Xi2]i(E[Xi])2(2.36)=i(V[Xi]+(E[Xi])2)i(E[Xi])2(2.37)=i(σi2+μi2)iμi2(2.38)\begin{aligned} \mathbb V\left[\prod^{n}_{i=1}X_{_i}\right] &=\mathbb E\left[(\prod_{i}X_{_i})^{^2}\right]-(\mathbb E\left[\prod_{i}X_{_i}\right])^{^2}\qquad\qquad\qquad\qquad\qquad(2.34)\\ &=\mathbb E\left[\prod_{i}X_{_i}^{^2}\right]-(\prod_{i}\mathbb E[X_{_i}])^{^2}\qquad\qquad\qquad\qquad\qquad\qquad(2.35)\\ &=\prod_{i}\mathbb E[X_{_i}^2]-\prod_{i}(\mathbb E[X_{_i}])^2\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.36)\\ &=\prod_{i}(\mathbb V[X_{_i}]+(\mathbb E[X_{_i}])^2)-\prod_{i}(\mathbb E[X_{_i}])^2\qquad\qquad\qquad\qquad(2.37)\\ &=\prod_{i}(\sigma^2_{_i}+\mu^2_{_i})-\prod_{i}\mu^2_{_i}\qquad\qquad\qquad\qquad\qquad\qquad\qquad(2.38) \end{aligned}

2.2.5.3    分布的众数(mode)

分布的众数是具有最高概率质量(对于离散变量)或概率密度(对于连续变量)的值:

x=arg maxx  p(x)(2.39)\textbf x^*=\underset{\textbf x}{\argmax}\ \ p(\textbf x)\qquad\qquad\qquad\qquad\qquad\qquad\qquad(2.39)

如果分布是多峰值的,这可能不是唯一的,如图2.4所示。再者,即使有独特的模式,这一点也未必是对分布的很好总结。 image.png

图2.4:两个 11 维高斯分布混合的图,p(x)=0.5N(x0,0.5)+0.5N(x2,0.5)p(x) = 0.5\mathcal N(x|0,0.5)+0.5\mathcal N(x|2,0.5) 。由 figures.probml.ai/book1/2.4的代码生成。

2.2.5.4    条件矩(Conditional moments)

当我们有两个或两个以上的相互依赖的随机变量时,我们可以根据一个已知变量的矩计算另一个变量的矩。例如,重复期望定律(law of iterated expectations),也称为总期望定律( law of total expectation),告诉我们

E[X]=E[E[XY]](2.40)\mathbb E[X]=\mathbb E[\mathbb E[X\vert Y]]\qquad\qquad\qquad\qquad\qquad\qquad\qquad(2.40)

为了证明这一点,同时为了简单起见,假设 XXYY 都是离散的随机变量。那我们就有

E[E[XY]]=E[xxp(X=xY)](2.41)=y[xxp(X=xY)]p(Y=y)=x,yxp(X=x,Y=y)=E[X](2.42)\begin{aligned} \mathbb E[\mathbb E[X\vert Y]] &=\mathbb E\left[\sum_x xp(X=x\vert Y)\right]\qquad\qquad\qquad\qquad(2.41)\\ &=\sum_y \left[\sum_x xp(X=x\vert Y)\right]p(Y=y)\\ &=\sum_{x,y}xp(X=x,Y=y)\\ &=\mathbb E[X]\qquad\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.42) \end{aligned}

为了给出更直观的解释,考虑下面这个简单的例子(这个例子来自 https://en.wikipedia.org/wiki/Law_of_total_expectation,但是有修改过的符号)。令 XX 是灯泡的寿命,令 YY 是灯泡的生产工厂。假设 E[XY=1]=5000\mathbb E[X|Y=1]=5000E[XY=2]=4000\mathbb E[X|Y=2]=4000 ,说明工厂 11 生产的灯泡寿命更长。假设工厂 11 供应 60%60\% 的灯泡,那么 p(Y=1)=0.6p(Y=1)=0.6p(Y=2)=0.4p(Y=2)=0.4 。那么随机灯泡的总预期持续正常使用的时间由下式给出

E[X]=E[XY=1]p(Y=1)+E[XY=2]p(Y=2)=5000×0.6+4000×0.4=4600(2.43)\begin{aligned} \mathbb E[X] &=\mathbb E[X\vert Y=1]p(Y=1)+\mathbb E[X\vert Y=2]p(Y=2)\\ &=5000\times0.6+4000\times0.4=4600\qquad\qquad\qquad\qquad(2.43) \end{aligned}

  方差也有类似的公式。特别是,总方差定律(law of total variance),也称为条件方差公式(conditional variance formula),告诉我们

V[X]=E[V[XY]]+V[E[XY]](2.44)\mathbb V[X]=\mathbb E[\mathbb V[X\vert Y]]+\mathbb V[\mathbb E[X\vert Y]]\qquad\qquad\qquad\qquad\qquad\qquad(2.44)

  为了证明这一点,让我们定义条件矩,μXY=E[XY]\mu_{_{X\vert Y}}=\mathbb E[X\vert Y]sXY=E[X2Y]s_{_{X\vert Y}}=\mathbb E[X^2\vert Y] ,和 σXY2=V[XY]=sXYμXY2\sigma^2_{_{X\vert Y}}=\mathbb V[X\vert Y]=s_{_{X\vert Y}}-\mu^2_{_{X\vert Y}} ,它们是 YY 的函数(因此 YY 是随机量)。然后我们有了

V[X]=E[X2](E[X])2=E[sXYY](E[μXYY])2(2.45)=E[σXY2Y]+E[μXY2Y](E[μXYY])2(2.46)=EY[σXY2]+VY[μXY]=EY[V[XY]]+VY[E[XY]](2.47)\begin{aligned} \mathbb V[X] &=\mathbb E[X^2]-(\mathbb E[X])^2=\mathbb E[s_{_{X\vert Y}}\vert Y]-(\mathbb E[\mu_{_{X\vert Y}}\vert Y])^2\qquad\qquad(2.45)\\ &=\mathbb E[\sigma^2_{_{X\vert Y}}\vert Y]+\mathbb E[\mu^2_{_{X\vert Y}}\vert Y]-(\mathbb E[\mu_{_{X\vert Y}}\vert Y])^2\qquad\qquad\qquad\quad(2.46)\\ &=\mathbb E_{_{Y}}[\sigma^2_{_{X\vert Y}}]+\mathbb V_{_Y}[\mu_{_{X\vert Y}}]\\ &=\mathbb E_{_{Y}}[\mathbb V[X\vert Y]]+\mathbb V_{_{Y}}[\mathbb E[X\vert Y]]\qquad\qquad\qquad\qquad\qquad\qquad(2.47) \end{aligned}

注解

  • 条件期望的定义
    XXYY 是离散随机变量,则 XX 在给定事件 Y=yY=y 条件下的条件期望是 xx 的在 YY 的值域的函数

    E(XY=y)=xXxp(X=xY=y)=xXxp(X=x,Y=y)p(Y=y)\begin{aligned} \mathbb E(X\vert Y=y) &=\sum_{x\in\mathcal X}xp(X=x\vert Y=y)\\ &=\sum_{x\in\mathcal X}x\frac{p(X=x,Y=y)}{p(Y=y)} \end{aligned}

    其中,X\mathcal X 是变量 XX 的定义域。 如果现在 XX 是一个连续随机变量,而 YY 仍然是一个离散变量,则条件期望是

    E(XY=y)=XxfX(xY=y)dx\mathbb E(X\vert Y=y)=\int_{_{\mathcal X}}xf_{_{_X}}(x\vert Y=y)dx

    其中,fX(  Y=y)f_{_{_X}}(\ \cdot\ \vert Y=y) 是在给定 Y=yY=y 条件下 XX 的条件概率密度函数。

  • 概念对比
    E(X)\mathbb E(X) 是一个数值;
    E(XY)\mathbb E(X\vert Y) 是一个关于 YY 的函数,是一个随机变量;
    E(XY=y)\mathbb E(X\vert Y=y) 是一个定值。

  • 条件期望的性质

    1. 迭代期望定律:E[E[XY]]=E[X]\mathbb E[\mathbb E[X\vert Y]]=\mathbb E[X]
    2. 对于任意函数 gg ,有 E[g(Y)Y]=g(Y)\mathbb E[g(Y)\vert Y]=g(Y)
      证明:
      f(Y)=E[g(Y)Y]f(Y)=\mathbb E[g(Y)\vert Y]YDY\in\mathcal D
      f(y)=E[g(Y)Y=y]f(y)=\mathbb E[g(Y)\vert Y=y],(  yD\forall\ y\in\mathcal D
      Y=yY=y 发生时,g(Y)=g(y)g(Y)=g(y) ,有
      E[g(Y)Y=y]=E[ g(y)常数 ]=g(y)\begin{aligned} \mathbb E[g(Y)\vert Y=y]=\mathbb E[\ \underbrace{g(y)}_{常数}\ ]=g(y) \end{aligned}
      f(y)=g(y)f(y)=g(y) yD\forall\ y\in\mathcal D
      f(Y)=g(Y)=E[g(y)Y]f(Y)=g(Y)=\mathbb E[g(y)\vert Y],得证。
    3. XXYY 相互独立,则 E[XY]=E[X]\mathbb E[X\vert Y]=\mathbb E[X]
    4. E[XY]=E[X]\mathbb E[X\vert Y]=\mathbb E[X] ,则 Cov(X,Y)=0\mathbb{Cov}(X,Y)=0
    5. XXF\mathcal F 可测的,则 E(XF)=X\mathbb E(X\vert\mathcal F)=X
  • 条件方差的定义
    方差:V[X]=E[(Xμ)2]=E[X2](E[X])2\mathbb V[X]=\mathbb E[(X-\mu)^2]=\mathbb E[X^2]-(\mathbb E[X])^2
    条件方差:V[XY]=E[(XE[XY])2Y]=E[X2Y](E[XY])2\mathbb V[X\vert Y]=\mathbb E[(X-\mathbb E[X\vert Y])^2\vert Y]=\mathbb E[X^2\vert Y]-(\mathbb E[X\vert Y])^2

  • 方差分解

    V[X]=V[E[XY]]+E[V[XY]]\mathbb V[X]=\mathbb V[\mathbb E[X\vert Y]]+\mathbb E[\mathbb V[X\vert Y]]

    证明

    V[E[XY]]=E[(E[XY])2](E[E[XY]])2=E[(E[XY])2](E[X])2\begin{aligned} \mathbb V\big[\mathbb E[X\vert Y]\big] &=\mathbb E\big[(\mathbb E[X\vert Y])^2\big]-\big(\mathbb E\big[E[X\vert Y]\big]\big)^2\\ &=\mathbb E\big[(\mathbb E[X\vert Y])^2\big]-\big(\mathbb E[X]\big)^2 \end{aligned}
    E[V[XY]]=E[E[X2Y](E[XY])2]=E[X2]E[(E[XY])2]\begin{aligned} \mathbb E\big[\mathbb V[X\vert Y]\big] &=\mathbb E\big[\mathbb E[X^2\vert Y]-\big(\mathbb E[X\vert Y]\big)^2\big]\\ &=\mathbb E\big[X^2\big]-\mathbb E\big[(\mathbb E[X\vert Y])^2\big] \end{aligned}

    得证。

    第一种直观理解
    直观地,由上式可以把生成 XX 的步骤看成两步:

    1. 先生成 YY ,由此可以确定 XX 的均值和方差;
    2. 再根据这个均值和方差生成 XX
      那么X的方差的来源就分为两部分:
    3. 第一步中,由 YY 的不同导致的 XX 的均值的波动;
    4. 第二步中,确定了 XX 的均值之后 XX 本身的波动。

    第二种直观理解(从回归的角度看)
    E[X]\mathbb E[X] —— 对 XX 的猜测;
    E[XY]\mathbb E[X\vert Y] —— 在学到 YY 之后对 XX 的猜测;
    V[X]\mathbb V[X] —— 对 XX 的猜测的误差(方差);
    V[XY]\mathbb V[X\vert Y] —— 在学到 YY 之后对 XX 的猜测的误差(方差);
    那么,思考一下对 XX 的猜测的误差(方差)是什么?
    E[V[XY]]\mathbb E\big[\mathbb V[X\vert Y]\big] —— 在学到 YY 之后对 XX 的(剩余的)误差(方差)的猜测;
    V[E[XY]]\mathbb V\big[\mathbb E[X\vert Y]\big] —— 在学到 YY 之后对 XX 的猜测引入的误差(注意这个误差是由于 YY 的误差造成的);
    即,对 XX 的猜测的误差 = 学习之后对 XX 剩余的误差的预估 + 学习的知识的误差


  为了得到这些公式的一些直觉,考虑 KK 个单变量高斯的混合。设 YY 为指定我们使用哪种混合成分的隐藏指示变量,设 X=y=1Kπy N(Xμy,σy)X=\sum^K_{_{y=1}}\pi_{_y}\ \mathcal N(X\vert\mu_{_y},\sigma_{_y}) 。在图2.4中,我们有 π1=π2=0.5\pi_{_1}=\pi_{_2}=0.5μ1=0\mu_{_1}=0μ2=2\mu_{_2}=2σ1=σ2=0.5\sigma_{_1}=\sigma_{_2}=0.5 。因此

E[V[XY]]=π1σ12+π2σ22=0.5(2.48)V[E[XY]]=π1(μ1μ)2+π2(μ2μ)2  =0.5(01)2+0.5(21)2=0.5+0.5=1(2.49)\begin{aligned} &\mathbb E[\mathbb V[X\vert Y]]=\pi_{_1}\sigma^2_{_1}+\pi_{_2}\sigma^2_{_2}=0.5\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.48)\\ &\mathbb V[\mathbb E[X\vert Y]]=\pi_{_1}(\mu_{_1}-\overline\mu)^2+\pi_{_2}(\mu_{_2}-\overline\mu)^2\\ &\qquad\qquad\ \ =0.5(0-1)^2+0.5(2-1)^2=0.5+0.5=1\qquad\qquad(2.49) \end{aligned}

所以我们得到了一个直观的结果,XX 的方差是由它是从哪个质心提取出的(即均值的区别)来决定的,而不是每个质心周围的局部方差。

2.2.6    总结统计学(summary statistics)的局限性 *\ ^\textbf*

虽然使用简单的统计数据(如平均值和方差)来总结概率分布(或从分布中采样的点)是很常见的,但这可能会丢失大量信息。这方面的一个突出例子是Anscombe的四重奏(quartet)[F. J. Anscombe. “Graphs in Statistical Analysis”. In:Am. Stat. 27.1 (1973), pp. 17–21],如图2.5所示。这显示了 (x,y)(x,y) 对(pairs)的 44 个不同数据集,所有数据集都具有相同的低阶统计量:E[x]=9\mathbb E[x]=9V[x]=11\mathbb V[x]=11E[y]=7.50\mathbb E[y]=7.50V[y]=4.125\mathbb V[y]=4.125ρ=0.816\rho=0.816 。(量 ρ\rho 是第3.1.2节中定义的相关系数)然而,从这些点采样的联合分布 p(x,y)p(x,y) 显然非常不同。Anscombe发明了这些数据集,每个数据集由 1010 个数据点组成,以对抗统计学家的印象 —— 数值总结(summary)优于数据可视化[F. J. Anscombe. “Graphs in Statistical Analysis”. In:Am. Stat. 27.1 (1973), pp. 17–21]。
image.png

图2.5:Anscombe四重奏(quartet)的图示。所有这些数据集都具有相同的低阶总结(summary)统计信息。由figures.probml.ai/book1/2.5的代码生成。

  图2.6显示了这种现象的一个更显著的例子。这包括一个看起来像恐龙的数据集[这个数据集是由阿尔韦托·卡罗创建的,可在www.thefunctionalart.com/2016/08/dow…获得],加上 1111 个其他数据集,所有数据集都有相同的低阶统计量。这个数据集的集合被称为Datasaurus Dozen。(x,y)(x,y)点的精确值可在线获得[www.autodesk.com/research/pu…实际上总共有 1313 个数据集,包括恐龙。为了视觉清晰,我们省略了“away”数据集。]。它们是使用模拟退火(一种无导数优化方法)计算的,我们将在本书的后续部分讨论[K. P. Murphy. Probabilistic Machine Learning: Advanced Topics. MIT Press, 2022]。(正在被优化的目标函数测量了与原始恐龙的目标总结(summary)统计的偏差,加上与特定目标形状的距离。)
image.png

图2.6:Datasaurus Dozen的图示。所有这些数据集都具有相同的低阶汇总统计信息。由figures.probml.ai/book1/2.6.的代码生成。

  同样的模拟退火方法可以应用于 1d1d 数据集,如图2.7所示。我们看到所有的数据集都有很大的不同,但是它们都有相同的中位数和四分位距(inter-quartile range),如中间箱形(box)图的中间阴影部分所示。一个更好的可视化是小提琴(violin )图,显示在右边。这显示了(两份)垂直轴上分布的一维核密度估计值(第16.3节),以及中值和IQR标记。这种可视化能够更好地区分分布的差异。然而,该技术仅限于 1d1d 数据。
image.png

图2.7:77 个不同数据集的图示(左),对应的box图(中)和小提琴方框图(右)。来自www.autodesk.com/research/pu…的图8。

2.3    贝叶斯法则

  贝叶斯定理对于概率论就像毕达哥拉斯定理对于几何学一样。——Sir Harold Jeffreys,1973年。

  在这一节中,我们讨论贝叶斯推理的基础。根据《韦氏词典》,“推断”一词的意思是“从样本数据到泛化的行为,通常伴有计算出的确定程度”。术语“贝叶斯”用于指使用概率论表示“确定程度”的推理方法,并利用贝叶斯法则来更新给定数据的确定程度。
  贝叶斯规则本身非常简单:它只是一个公式,用于计算给定一些观测数据 Y=yY = y 时未知(或隐藏)量 HH 的可能值的概率分布:

p(H=hY=y)=p(H=h) p(Y=yH=h)p(Y=y)(2.50)p(H=h\vert Y=y)=\frac{p(H=h)\ p(Y=y\vert H=h)}{p(Y=y)}\qquad\qquad\qquad(2.50)

这是由类别(identity)自动产生的

p(hy)p(y)=p(h)p(yh)=p(h,y)(2.51)p(h\vert y)p(y)=p(h)p(y\vert h)=p(h,y)\qquad\qquad\qquad(2.51)

它本身遵循概率的乘积法则
  在等式(2.50),项 p(H)p(H) 代表我们在看到任何数据之前对 HH 的可能值的了解;这被称为先验分布。(如果 HHKK 个可能的值,那么 p(H)p(H) 是包含 KK 个概率值的向量,它们的总和为 11 )项 p(YH=h)p(Y\vert H=h) 代表我们看到如果 H=hH=h 时可能结果 YY 的分布,;这被称为观察分布(observation distribution)。当我们在对应于实际观测值 yy 的点上对此进行评估时,我们得到了函数 p(Y=yH=h)p(Y=y\vert H=h) ,这被称为似然(likelihood)。(注意,这是 hh 的函数,因为 yy 是固定的,但它不是概率分布,因为它的和不等于 11 )将每个 hh 的先验分布 p(H=h)p(H = h) 乘以似然函数 p(Y=yH=h)p(Y=y|H=h) 得到非归一化的联合分布 p(H=h,Y=y)p(H=h,Y=y) 。我们可以通过除以 p(Y=y)p(Y=y) 将其转换为归一化的分布,其中 p(Y=y)p(Y=y) 被称为边缘似然,因为它是通过对未知 HH 进行边缘化来计算的:

p(Y=y)=hHp(H=h)p(Y=yH=y)=hHp(H=h,Y=y)(2.52)p(Y=y)=\sum_{h^{\prime}\in\mathcal H}p(H=h^{\prime})p(Y=y\vert H=y^{\prime})=\sum_{h^{\prime}\in\mathcal H}p(H=h^{\prime},Y=y)\qquad\qquad(2.52)

通过计算每个 hhp(H=h,Y=y)p(Y=y)\frac{p(H=h,Y=y)}{p(Y=y)} 来对联合分布进行归一化,得到后验分布 p(H=hY=y)p(H=h\vert Y=y) ;这代表了我们对 HH 的可能值的新的信念状态(belief state)
  我们可以用文字将贝叶斯规则总结如下:

posteriorprior×likelihood(2.53)\text{posterior}\propto\text{prior}\times\text{likelihood}\qquad\qquad\qquad\qquad\qquad(2.53)

这里我们使用符号 \propto 来表示“正比于”,因为我们忽略了分母,它只是一个常数,与 HH 无关。在给定相关观测数据的情况下,使用贝叶斯法则来更新某个感兴趣的量的未知值的分布,称为贝叶斯推断(Bayesian inference),或后验推断(posterior inference)。也可以仅仅称为概率推理(probabilistic inference)
  下面我们给出一些简单的贝叶斯推理的例子。我们将在本书后面看到更多有趣的例子。

2.3.1    示例:新冠肺炎(COVID-19)测试

假设你认为你可能感染了新冠肺炎,这是一种由新型冠状病毒引起的传染病。您决定进行诊断测试,并希望使用其结果来确定您是否感染。
  令 H=1H=1 代表事件“您被感染”,H=0H=0 代表事件“您未被感染”。如果测试结果为阳性,则令 Y=1Y=1 ,如果测试结果为阴性,则设 Y=0Y=0 。我们想计算 p(H=hY=y)p(H=h\vert Y=y) ,对于 h{0,1}h\in\{0,1\} ,其中 yy 是观察到的测试结果。(为了简洁起见,我们将把值的分布 [p(H=0Y=y),p(H=1Y=y)][p(H=0\vert Y=y),p(H=1\vert Y=y)] 写成 p(Hy)p(H|y) )我们可以认为这是一种二元分类的形式,其中 HH 是未知的类别标签,yy 是特征向量。
  首先我们必须明确似然。这个数量显然取决于测试的可靠性。有两个关键参数。灵敏性(sensitivity)(又名真阳性率(true positive rate))定义为 p(Y=1H=1)p(Y=1\vert H=1) ,即假设事实为阳性,检验结果也为阳性的概率。假阴性率(false negative rate)(即 p(Y=0H=1)p(Y=0\vert H=1))定义为 1灵敏性1-\textbf{灵敏性}免疫特异性(specificity)(又称真阴性率(true negative rate))定义为 p(Y=0H=0)p(Y=0\vert H=0) ,即假设真实情况为阴性,检测结果也为阴性的概率。假阳性率(false positive rate )(即 p(Y=1H=0)p(Y=1\vert H=0) )定义为 1免疫特异性1-\textbf{免疫特异性} 。我们在表2.1中总结了所有这些量。(见第5.1.3.1节了解更多详情)在nyti.ms/31MTZgV,之后,我们将敏感性设定为 87.5%87.5\% ,特异性设定为 97.5%97.5\%
image.png

表2.1:给定两个可能的隐藏状态 HH ,二元观测 YY 的似然函数 p(YH)p(Y\vert H) 。每行的加和为 11 。简称:TNR为真阴性率,TPR为真阳性率,FNR为假阴性率,FPR为假阳性率。

  接下来我们必须指定先验。量 p(H=1)p(H=1) 代表疾病在你居住地区的流行程度(prevalence)。我们将其设置为 p(H=1)=0.1p(H=1)=0.1 (即 10%10\% ),这是2020年春季纽约市的流行率(选择这个例子是为了匹配nyti.ms/31MTZgV的数字)。
现在假设你检测呈阳性。我们有

p(H=1Y=1)=p(Y=1H=1) p(H=1)p(Y=1H=1) p(H=1)+p(Y=1H=0) p(H=0)(2.54)=TPR×先验TPR×先验+TPR×(1先验)(2.55)=0.875×0.10.875×0.1+0.025×0.9=0.795(2.56)\begin{aligned} p(H=1\vert Y=1) &=\frac{p(Y=1\vert H=1)\ p(H=1)}{p(Y=1\vert H=1)\ p(H=1)+p(Y=1\vert H=0)\ p(H=0)}\qquad\qquad(2.54)\\ &=\frac{\text{TPR}\times\textbf{先验}}{\text{TPR}\times\textbf{先验}+\text{TPR}\times(1-\textbf{先验})}\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.55)\\ &=\frac{0.875\times 0.1}{0.875\times 0.1+0.025\times 0.9}=0.795\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.56) \end{aligned}

所以你有 79.5%79.5\% 的几率被感染。
  现在假设你的测试结果是阴性。你被感染的概率由下式给出

p(H=1Y=0)=p(Y=0H=1) p(H=1)p(Y=0H=1) p(H=1)+p(Y=0H=0) p(H=0)(2.57)=FNR×先验FNR×先验+TNR×(1先验)(2.58)=0.125×0.10.125×0.1+0.975×0.9=0.014(2.59)\begin{aligned} p(H=1\vert Y=0) &=\frac{p(Y=0\vert H=1)\ p(H=1)}{p(Y=0\vert H=1)\ p(H=1)+p(Y=0\vert H=0)\ p(H=0)}\qquad\qquad(2.57)\\ &=\frac{\text{FNR}\times\textbf{先验}}{\text{FNR}\times\textbf{先验}+\text{TNR}\times(1-\textbf{先验})}\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.58)\\ &=\frac{0.125\times 0.1}{0.125\times 0.1+0.975\times 0.9}=0.014\qquad\qquad\qquad\qquad\qquad\qquad\quad(2.59) \end{aligned}

所以你被感染的几率只有 1.4%1.4\%
  如今新冠肺炎流行率低得多。假设我们使用 1%1\% 的基本流行程度重复这些计算;现在后验概率分别降低到 26%26\%0.13%0.13\%
  即使在检测呈阳性后,您感染新冠肺炎病毒的几率也只有 26%26\% ,这是非常违背直觉的。原因是单一阳性检测更有可能是假阳性,而不是由于疾病,因为这种疾病很罕见。要看到这一点,假设我们有 1010 万人口,其中 10001000 人被传染。被传染者中,875=0.875×1000875=0.875\times 1000 人检测结果呈阳性,未被传染者中,2475=0.025×990002475= 0.025×99000 人检测结果呈阳性。因此,阳性总数为 3350=865+24753350=865+2475 ,因此给定阳性检测结果,被感染的后验概率为 8753350=0.26\frac{875}{3350}=0.26
  当然,以上计算假设我们知道测试的灵敏性(sensitivity)和免疫特异性(specificity)。当这些参数存在不确定性时,如何将贝叶斯法则应用于诊断测试,请参见[A. Gelman and B. Carpenter. “Bayesian analysis of tests with unknown specifificity and sensitivity”. In:J. of Royal Stat. Soc. Series C medrxiv;2020.05.22.20108944v2 (2020)]。

2.3.2    示例:Monty Hall问题

在本节中,我们考虑贝叶斯法则的一个更“轻浮(frivolous)”的应用。特别是,我们将其应用于著名的Monty Hall问题
  想象一个游戏节目,有以下规则:有三扇门,标为 112233 。一个奖品(例如一辆车)藏在其中一扇门的后面。您可以选择一扇门。然后游戏节目主持人打开另外两扇门中的一扇门(除了您选的那扇门),以不泄露奖品真实位置的方式。在这一点上,您会得到一个选择新的门的机会:您可以坚持你的第一个选择,或者你可以切换选择到另一个关闭着的门。所有的门都会被打开,您会收到你最终选择的门背后的任何东西。
  例如,假设您选择了门 11 ,游戏节目主持人打开了门 33 ,门后面什么也没有,就像承诺的那样。你应该(a)坚持选择 11 号门,还是(b)换到 22 号门,还是(c)没什么区别?
  从直觉上看,这应该没什么区别,因为您最初选择的门不会影响奖品的位置。然而,主持人打开门 33 的事实告诉我们一些关于奖品位置的事情,因为他的选择取决于对奖品真实位置的了解和你的选择。如下面所描述的,如果您切换选择到 22 号门,你中大奖的几率是原来的两倍。
  为了说明这一点,我们将使用贝叶斯法则。令 HiH_{_i} 表示奖品在门 ii 后面的假设,我们做如下假设:H1H_{_1}H2H_{_2}H3H_{_3} 三个假设先验等概率,即,

P(H1)=P(H2)=p(H3)=13(2.60)P(H_{_1})=P(H_{_2})=p(H_{_3})=\frac13\qquad\qquad\qquad\quad\qquad\qquad\qquad\quad(2.60)

选择门 11 后,我们收到的数据是要么 Y=3Y=3 要么 Y=2Y=2 (分别表示门 33 或门 22 打开)。我们假设这两种可能的结果具有以下概率。如果奖品在 11 号门后面,那么主持人在 Y=2Y=2Y=3Y=3 之间随机选择。否则主持人的选择是被强迫的,概率为 0011

P(Y=2H1)=12P(Y=3H1)=12|P(Y=2H2)=0P(Y=3H2)=1|P(Y=2H3)=1P(Y=2H3)=0(2.61)\left\vert \begin{array}{l} P(Y=2\vert H_{_1})=\frac12\\ P(Y=3\vert H_{_1})=\frac12 \end{array} \middle\vert \begin{array}{l} P(Y=2\vert H_{_2})=0\\ P(Y=3\vert H_{_2})=1 \end{array} \middle\vert \begin{array}{l} P(Y=2\vert H_{_3})=1\\ P(Y=2\vert H_{_3})=0 \end{array} \right\vert\qquad(2.61)

现在,使用贝叶斯定理,我们评估假设的后验概率:

P(HiY=3)=P(Y=3Hi) P(Hi)P(Y=3)(2.62)P(H_{_i}\vert Y=3)=\frac{P(Y=3\vert H_{_i})\ P(H_{_i})}{P(Y=3)}\qquad\qquad\qquad\quad\qquad\qquad\qquad\quad(2.62)
P(H1Y=3)=1213P(Y=3)|P(H2Y=3)=113P(Y=3)|P(H3Y=3)=013P(Y=3)(2.63)\left\vert P(H_{_1}\vert Y=3)=\frac{\frac12\cdot\frac13}{P(Y=3)} \middle\vert P(H_{_2}\vert Y=3)=\frac{1\cdot\frac13}{P(Y=3)} \middle\vert P(H_{_3}\vert Y=3)=\frac{0\cdot\frac13}{P(Y=3)} \right\vert\quad(2.63)

分母 P(Y=3)P(Y=3)P(Y=3)=16+13=12P(Y=3)=\frac16+\frac13=\frac12 。因此

P(H1Y=3)=13|P(H2Y=3)=23|P(H3Y=3)=0(2.64)\left\vert P(H_{_1}\vert Y=3)=\frac13 \middle\vert P(H_{_2}\vert Y=3)=\frac23 \middle\vert P(H_{_3}\vert Y=3)=0 \right\vert\qquad\qquad\quad(2.64)

所以选手应该换到 22 号门,这样才有最大的机会拿奖。工作示例见表2.2。
image.png

表2.2:蒙蒂霍尔游戏的3种可能状态,显示切换门比保持原来的选择好两倍(平均)。

  许多人觉得这个结果令人惊讶。让它更直观的一种方法是进行一个思维实验,在这个实验中,游戏用一百万扇门来玩。现在的规则是,选手选择一扇门,然后游戏节目主持人打开 999998999998 扇门,不透露奖品,留下选手选择的门和另一扇门关闭。选手现在可以坚持或切换。想象一下,选手面对一百万扇门,其中 11 号门和 234598234598 号门还没有打开,11 号门是选手最初的猜测。你认为奖品在哪里?

2.3.3    逆(Inverse)问题 *\ ^\textbf*

概率论关注的是在给定关于世界状态的知识(或假设)的情况下,预测结果 yy 的分布。相比之下,逆概率关注的是从对结果的观察中推断世界的状态。我们可以认为这是 hyh\to y 映射的反转。
  例如,考虑尝试从 2d2\text d 图像 yy 推断 3d3\text d 形状 hh 。本质上这是一个病态的的问题,如图2.5所示,因为有多个可能的隐藏 hh 与同一个观察到的 yy 一致。为了解决这种逆问题,我们可以使用贝叶斯法则来计算后验 p(hy)p(h|y) ,如上所述。这需要指定前向模型(forwards model) p(yh)p(y|h) 以及先验 p(h)p(h) ,这可以用来排除(或降低权重)不可信的反向映射。我们在本书的后面部分更详细地讨论了这个话题。
image.png

图2.5:任何平面线图在几何上都与无限多的三维结构一致。

2.4    伯努利(Bernoulli)分布和二项式(binomial)分布

也许最简单的概率分布是伯努利分布(Bernoulli distribution),它可以用来模拟二元事件,如下所述。

2.4.1    定义

  考虑抛一枚硬币,其中硬币正面朝上的概率由 0θ10\le\theta\le 1 给出。令 Y=1Y=1 表示这个事件,令 Y=0Y=0 表示硬币反面朝上的事件。因此,我们假设 p(Y=1)=θp(Y=1)=\thetap(Y=0)=1θp(Y=0)=1-\theta 。这叫做伯努利分布,可以写成如下形式

YBer(θ)(2.66)Y\sim\text{Ber}(\theta)\qquad\qquad\qquad\qquad\qquad\qquad(2.66)

其中符号 \sim 表示“采样自”或“分布为”,Ber\text{Ber} 表示伯努利。该分布的概率质量函数(pmf)定义如下:

Ber(yθ)={1θif y=0θ   if y=1(2.67)\text{Ber}(y\vert\theta)=\left\{ \begin{aligned} &1-\theta\quad\text{if}\ y=0\\ &\theta\qquad\ \ \ \text{if}\ y=1 \end{aligned} \qquad\qquad\qquad\quad(2.67) \right.

(关于pmf的详细信息见第2.2.1节)我们可以用更简洁的方式写如下:

Ber(yθ)=θy(1θ)1y(2.68)\text{Ber}(y\vert\theta)\overset{\triangle}{=}\theta^{y}(1-\theta)^{1-y}\qquad\qquad\qquad\quad(2.68)

  伯努利分布是二项式分布(binomial distribution) 的一个特例。为了解释这一点,假设我们观察到一组 NN 次伯努利试验,表示为 ynBer(  θ)y_{_n}\sim\text{Ber}(\ \cdot\ \vert\theta) ,对于 n=1:Nn=1:N 。具体来说,考虑抛硬币 NN 次。我们把 ss 定义为头朝上的次数,s=n=1NI(yn=1)s\overset{\triangle}{=}\sum^N_{_{n=1}}\mathbb I(y_{_n}=1)ss 的分布由二项式分布给出:

Bin(sN,θ)=(Ns)θs(1θ)Ns(2.69)\text{Bin}(s\vert N,\theta)\overset{\triangle}{=}\binom{N}{s}\theta^{s}(1-\theta)^{N-s}\qquad\qquad\qquad\quad(2.69)

其中

(Nk)=N!(Nk)! k!(2.70)\binom{N}{k}\overset{\triangle}{=}\frac{N!}{(N-k)!\ k!}\qquad\qquad\qquad\qquad\qquad\qquad(2.70)

是从 NN 个项中选择 kk 个项的方式数(这被称为二项式系数,发音为“ NNkk ”)。二项式分布的一些例子见图2.9。如果 N=1N=1 ,二项式分布简化为伯努利分布。 image.png

图2.9:N=10N=10 且(a)θ=0.25\theta=0.25 且(b)θ=0.9\theta=0.9 的二项式分布图。由 figures.probml.ai/book1/2.9的代码生成。

2.4.2    Sigmoid(逻辑)函数

当我们想要预测给定一些输入 xX\textbf x\in\mathcal X 的二元变量 y{0,1}y\in\{0,1\} 时,我们需要使用以下形式的条件概率分布

p(yx,θ)=Ber(yf(x;θ))(2.71)p(y\vert\textbf x,\pmb\theta)=\text{Ber}(y\vert f(\textbf x;\pmb\theta))\qquad\qquad\qquad\qquad\qquad\qquad(2.71)

其中 f(x;θ)f(\textbf x;\pmb\theta) 是预测输出分布的平均参数的函数。我们将在Part II–Part IV中考虑许多不同类型的函数 ff
image.png

表2.3:sigmoid(逻辑(logistic))和相关函数的一些有用的性质。请注意,logit函数是sigmoid函数的反(inverse)函数,其定义域为 [0,1][0,1]

  为了避免概率的必要条件 0f(x;θ)10\le f(\textbf x;\pmb\theta) ≤ 1 ,我们可以设 ff 为无约束函数,并使用以下模型:

p(yx,θ)=Ber(yσ(f(x;θ)))(2.78)p(y\vert\textbf x,\pmb\theta)=\text{Ber}(y\vert\pmb\sigma(f(\textbf x;\pmb\theta)))\qquad\qquad\qquad\qquad\qquad\qquad(2.78)

这里 σ(  )\pmb\sigma(\ \cdot\ )sigmoid逻辑(logistic) 函数,定义如下:

σ(a)=11+ea(2.79)\pmb\sigma(a)\overset{\triangle}{=}\frac{1}{1+e^{-a}}\qquad\qquad\qquad\qquad\qquad\qquad(2.79)

image.png

图2.10:(a) sigmoid(逻辑)函数 σ(a)=(1+ea)1\sigma(a)=(1+e^{−a})^{−1} 。 (b) Heaviside 函数 I(a>0)\mathbb I(a>0) 。由figures.probml.ai/book1/2.10的代码生成。

其中 a=f(x;θ)a=f(\textbf x;\pmb\theta) 。术语“sigmoid”表示 S 形:见图2.10a。 我们看到它将整条实线映射到 [0,1][0,1] ,这是将输出解释为概率(因此是伯努利参数 θ 的有效值)所必需的。 sigmoid 函数可以被认为是 heaviside 阶跃(step)函数的“软”版本,定义为

H(a)=I(a>0)(2.80)H(a)\overset{\triangle}{=}\mathbb I(a>0)\qquad\qquad\qquad\qquad\qquad\qquad(2.80)

如图2.10b所示。
  将 sigmoid 函数的定义代入方程(2.78)我们得到

p(y=1x,θ)=11+ea=ea1+ea=σ(a)(2.81)p(y=0x,θ)=111+ea=ea1+ea=11+ea=σ(a)(2.82)\begin{aligned} &p(y=1\vert\textbf x,\pmb\theta)=\frac{1}{1+e^{-a}}=\frac{e^{a}}{1+e^{a}}=\pmb\sigma(a)\qquad\qquad\qquad\qquad\qquad\quad(2.81)\\ \\ &p(y=0\vert\textbf x,\pmb\theta)=1-\frac{1}{1+e^{-a}}=\frac{e^{-a}}{1+e^{-a}}=\frac{1}{1+e^a}=\pmb\sigma(-a)\qquad\qquad(2.82) \end{aligned}

aa 等于对数可能性 log(p1p)\log(\frac{p}{1−p}) ,其中 p=p(y=1x;θ)p=p(y=1\vert\textbf x;\pmb\theta) 。 为得到这一点,注意

log(p1p)=log(ea1+ea1+ea1)=log(ea)=a(2.83)\log\big(\frac{p}{1-p}\big)=\log\big(\frac{e^a}{1+e^a}\cdot\frac{1+e^a}{1}\big)=\log(e^a)=a\qquad\qquad\qquad\quad(2.83)

逻辑函数sigmoid 函数将对数可能性 a 映射到 p :

p=logistic(a)=σ(a)=11+ea=ea1+ea(2.84)p=\text{logistic}(a)=\pmb\sigma(a)\overset{\triangle}{=}\frac{1}{1+e^{-a}}=\frac{e^a}{1+e^a}\qquad\qquad\qquad\quad(2.84)

它的反函数是logit函数,它将 p 映射到对数可能性 a :

a=logit(p)=σ1(p)=log(p1p)(2.85)a=\text{logit}(p)=\pmb\sigma^{-1}(p)\overset{\triangle}{=}\log\big(\frac{p}{1-p}\big)\qquad\qquad\qquad\qquad\qquad(2.85)

这些函数的一些有用特性见表2.3。

2.4.3    二元逻辑回归

在本节中,我们使用条件伯努利模型,其中我们使用 f(x;θ)=wxf(\textbf x;\pmb\theta)=\textbf w^{^{\intercal}}\textbf x 。模型就有了形式

p(yx;θ)=Ber(yσ(wx+b))(2.86)p(y\vert\textbf x;\pmb\theta)=\text{Ber}(y\vert\pmb\sigma(\textbf w^{\intercal}\textbf x+b))\qquad\qquad\qquad\qquad\qquad(2.86)

换言之,

p(y=1x;θ)=σ(wx+b)=11+e(wx)(2.87)p(y=1\vert\textbf x;\pmb\theta)=\pmb\sigma(\textbf w^{\intercal}\textbf x+b)=\frac{1}{1+e^{-(\textbf w^{^{\intercal}}\textbf x)}}\qquad\qquad\quad(2.87)

这被称为逻辑回归
  作为例子,考虑鸢尾花数据集的 1122 分类版本,其中正类是“弗吉尼亚鸢尾(virginica)”,负类是“非弗吉尼亚鸢尾(not virginica)”,我们使用的特征 xx 是花瓣宽度(petal width)。我们对此拟合一个逻辑回归模型,结果如图2.11所示。决策边界对应于值 xx^{*} ,其中 p(y=1x=x,θ)=0.5p(y=1\vert x=x^{*},\pmb\theta) = 0.5 。我们看到,在这个例子中,x1.7x^{*}\approx1.7 。当 xx 远离这个边界时,分类器对其关于类标签的预测变得更加自信。
image.png

图2.11:逻辑回归应用于1维2类版本的鸢尾花数据集。由figures.probml.ai/book1/2.11的代码生成。

  从这个例子中能够很清楚为什么线性回归对(二元)分类问题是不合适的。在这样的模型中,当我们向右移动足够远时,概率会变到 11 以上,当我们向左移动足够远时,概率会变到 00 以下(直接将线性模型的函数值作为概率值)。
  关于逻辑回归的更多细节,见第10章。