2.1 Introduction# 2.1.1 What is Probability?# Probability theory is nothing but common sense reduced to calculation.
---- Pierre Laplace, 1812
概率论不过是把常识简化为计算而已
概率通常有两种解释:
频率学派 :概率代表了多次发生的事件的长期频率例如:如果我们多次抛硬币,我们期望它应该有一半次数正面朝上。 贝叶斯学派 :概率是用来量化我们对某事物的不确定性或无知程度的,因此它从根本上与信息有关,而不是重复试验例如:我们相信硬币下次抛掷,正面或反面朝上的可能性是相同的。 贝叶斯学派的解释的一个巨大优势:可以用于建模一些不具有长期频率的一次性事件的不确定性,例如计算北极冰川再2030年代融化的概率。本书即采用贝叶斯视角。但幸运的是,无论采用哪种解释,概率论的基础规则是相同的。
2.1.2 Types of uncertainty# 我们预测的不确定性通常来源两个不同原因。
Epistemic uncertainty 认知不确定性:我们对于数据产生的潜在原因或机制的无知,also called model uncertainty Aleatoric uncertainty 偶然不确定性:内在的随机性,即使收集再多数据也无法消除, also called data uncertainty 例如抛硬币,我们确定正面朝上的概率是0.5,所以这里没有模型不确定性,但我们仍然无法完美预测结果 在主动学习中这两者区别很重要,见 Section 6.1 2.1.3 Probability as an extension of logic# 在这一节中,我们将回顾概率的基本规则,我们将概率视为布尔逻辑的一个扩展。
2.1.3.1 Probability of an event# 我们定义一个事件,用二进制变量 A A A 表示,例如:A A A 可能是 “明天会下雨” or “昨天下雨了” or “the label is y=1” or “the param θ \theta θ is between 1.5 and 2.0”, 等等
我们用表达式 Pr ( A ) \Pr(A) Pr ( A ) 表示我们相信 A A A 为真的概率(或者 A A A 长期的发生频率)
0 ≤ Pr ( A ) ≤ 1 0\leq \Pr(A)\leq 1 0 ≤ Pr ( A ) ≤ 1 , Pr ( A ) = 0 \Pr(A)=0 Pr ( A ) = 0 意味着这个事件一定不会发生,Pr ( A ) = 1 \Pr(A)=1 Pr ( A ) = 1 意味着这个事件一定会发生
我们定义 Pr ( A ˉ ) \Pr(\bar{A}) Pr ( A ˉ ) 为事件 A A A 不发生的概率,则 Pr ( A ˉ ) = 1 − Pr ( A ) \Pr(\bar{A})=1-\Pr(A) Pr ( A ˉ ) = 1 − Pr ( A )
2.1.3.2 Probability of a conjunction of two events# 我们定义事件 A A A 和 B B B 一起发生的联合概率 为:
Pr ( A ∧ B ) = Pr ( A , B ) \Pr(A\wedge B)=\Pr(A,B) Pr ( A ∧ B ) = Pr ( A , B ) 如果 A A A 和 B B B 是独立事件,则有:
Pr ( A , B ) = Pr ( A ) Pr ( B ) \Pr(A,B)=\Pr(A)\Pr(B) Pr ( A , B ) = Pr ( A ) Pr ( B ) 2.1.3.3 Probability of a union of two events# 事件 A A A or 事件 B B B 发生的概率:
Pr ( A ∨ B ) = Pr ( A ) + Pr ( B ) − Pr ( A ∧ B ) \Pr(A \vee B)=\Pr(A)+\Pr(B)-\Pr(A\wedge B) Pr ( A ∨ B ) = Pr ( A ) + Pr ( B ) − Pr ( A ∧ B ) 如果两事件互斥,即不可能同时发生,则有:
Pr ( A ∨ B ) = Pr ( A ) + Pr ( B ) \Pr(A \vee B)=\Pr(A)+\Pr(B) Pr ( A ∨ B ) = Pr ( A ) + Pr ( B ) 2.1.3.4 Conditional Probability of one event given another# 在 A A A 事件已发生的条件下 B B B 事件发生的条件概率 :
Pr ( B ∣ A ) ≜ Pr ( A , B ) Pr ( A ) \Pr(B|A)\triangleq\frac{\Pr(A,B)}{\Pr(A)} Pr ( B ∣ A ) ≜ Pr ( A ) Pr ( A , B ) 如果 Pr ( A ) = 0 \Pr(A)=0 Pr ( A ) = 0 则无定义,因为我们不可能以一个不可能事件为条件。
2.1.3.5 Independence of events# 我们说事件 A A A 和 B B B 条件独立 ,如果满足如下条件:
Pr ( A , B ) = Pr ( A ) Pr ( B ) \Pr(A,B)=\Pr(A)\Pr(B) Pr ( A , B ) = Pr ( A ) Pr ( B ) 2.1.3.6 Conditional independence of events# 我们说事件 A A A 和事件 B B B 在给定的事件 C C C 下是条件独立的, 如果满足如下条件:
Pr ( A , B ∣ C ) = Pr ( A ∣ C ) Pr ( B ∣ C ) \Pr(A,B|C)=\Pr(A|C)\Pr(B|C) Pr ( A , B ∣ C ) = Pr ( A ∣ C ) Pr ( B ∣ C ) 记为 A ⊥ B ∣ C A\bot B|C A ⊥ B ∣ C . 事件总是互相依赖,但是当我们给予相关的中间变量条件时,也许可以当作独立事件,本章后面会进一步讨论。
2.2 Random variables# 如果 X X X 代表未知量 且/或 可以变化,我们称它 random variable or rv . X X X 可能的取值范围记为 X \mathcal{X} X , 称为 sample space or state space .
一个事件是一个给定样本空间的一系列结果。例如,如果 X X X 代表骰子抛掷后朝上的面,则 X = { 1 , 2 , . . . , 6 } \mathcal{X} = \{1,2,...,6\} X = { 1 , 2 , ... , 6 } , 事件“1面朝上”记为 X = 1 X = 1 X = 1 , 事件“奇数面朝上”记为 X ∈ { 1 , 3 , 5 } X\in\{1,3,5\} X ∈ { 1 , 3 , 5 }
2.2.1 Discrete random variables# 如果样本空间 X \mathcal{X} X 是有限或可数无限的,则称 X X X 为离散型随机变量 ,我们定义概率质量函数 probability mass function or pmf :
p ( x ) ≜ Pr ( X = x ) p(x)\triangleq \Pr(X = x) p ( x ) ≜ Pr ( X = x ) pmf 满足以下性质:0 ≤ p ( x ) ≤ 1 0\leq p(x)\leq 1 0 ≤ p ( x ) ≤ 1 and ∑ x ∈ X p ( x ) = 1 \sum_{x\in\cal{X}}p(x)=1 ∑ x ∈ X p ( x ) = 1
如果 X X X 的值有限,例如有 K K K 个取值,pmf 可以表示为一个 K K K 个数字的列表,并且可以画成一个直方图。
2.2.2 Continuous random variables# 如果 X ∈ R X\in \mathbb R X ∈ R 是一个实数值,那么它为一个连续型随机变量
2.2.2.1 Cumulative distribution function (cdf)# 定义事件 A = ( X ≤ a ) , B = ( X ≤ b ) , C = ( a < X ≤ b ) A=(X\leq a), B=(X\leq b), C=(a<X\leq b) A = ( X ≤ a ) , B = ( X ≤ b ) , C = ( a < X ≤ b ) , 其中 a < b a<b a < b .
易知 B = A ∨ C B = A\vee C B = A ∨ C , 且 A A A 和 C C C 互斥,由加法规则可得:
P r ( B ) = P r ( A ) + P r ( C ) P r ( C ) = P r ( B ) − P r ( A ) Pr(B)=Pr(A)+Pr(C)\\ Pr(C)=Pr(B)-Pr(A) P r ( B ) = P r ( A ) + P r ( C ) P r ( C ) = P r ( B ) − P r ( A ) 我们定义随机变量 X X X 的累积分布函数 cumulative distribution function or cdf :
P ( x ) ≜ P r ( X ≤ x ) P(x)\triangleq Pr(X\leq x) P ( x ) ≜ P r ( X ≤ x ) 由此我们可以计算任意区间内的概率:
P r ( a < X ≤ b ) = P ( b ) − P ( a ) Pr(a< X \leq b) = P(b)-P(a) P r ( a < X ≤ b ) = P ( b ) − P ( a ) Cdf 是单调非减函数
2.2.2.2 Probability density function (pdf)# 我们定义 cdf 的微分为概率密度函数 probability density function or pdf
p ( x ) ≜ d d x P ( x ) p(x) \triangleq \frac{d}{dx}P(x) p ( x ) ≜ d x d P ( x ) 注意这个微分不是总是存在的,若不存在则 pdf 无定义
一个单变量标准高斯分布的 cdf 和 pdf:
给定一个 pdf, 我们可以计算出一个连续型变量在一个区间内的概率:
P r ( a < X ≤ b ) = ∫ a b p ( x ) d x = P ( b ) − P ( a ) P r ( x < X ≤ x + d x ) ≈ p ( x ) d x Pr(a<X\leq b)=\int_a^b p(x) dx = P(b)-P(a)\\ Pr(x<X\leq x+dx)\approx p(x)dx P r ( a < X ≤ b ) = ∫ a b p ( x ) d x = P ( b ) − P ( a ) P r ( x < X ≤ x + d x ) ≈ p ( x ) d x 2.2.2.3 Quantiles# 如果 cdf P 严格单调递增,那么它有一个反函数,称作 inverse cdf , or percent point function (ppf) or quantile function .
如果 P P P 是 X X X 的 cdf, 那么 P − 1 ( q ) = x q , P r ( X ≤ x q ) = q P^{-1}(q)=x_q, Pr(X\leq x_q)=q P − 1 ( q ) = x q , P r ( X ≤ x q ) = q ; 称 P − 1 ( q ) P^{-1}(q) P − 1 ( q ) 为 P P P 的 q 分位数。
P − 1 ( 0.5 ) P^{-1}(0.5) P − 1 ( 0.5 ) 是分布的中位数,左右各有一半概率;P − 1 ( 0.75 ) P^{-1}(0.75) P − 1 ( 0.75 ) 和 P − 1 ( 0.25 ) P^{-1}(0.25) P − 1 ( 0.25 ) 分别是上下四分位数。
以标准正态分布 N ( 0 , 1 ) \mathcal{N} (0,1) N ( 0 , 1 ) 为例, Φ \Phi Φ 为它的 cdf,Φ − 1 \Phi^{-1} Φ − 1 为 ppf.中央区间 ( Φ − 1 ( α 2 ) , Φ − 1 ( 1 − α 2 ) ) (\Phi^{-1}(\frac{\alpha}{2}),\Phi^{-1}(1-\frac{\alpha}{2})) ( Φ − 1 ( 2 α ) , Φ − 1 ( 1 − 2 α )) 包含 1 − α 1-\alpha 1 − α 的概率质量。 令 α = 0.05 \alpha = 0.05 α = 0.05 , 中央 95% 的区间都在范围 ( − 1.96 , 1.96 ) (-1.96,1.96) ( − 1.96 , 1.96 ) 之内 如果分布变为 N ( μ , σ 2 ) \mathcal{N} (\mu,\sigma^2) N ( μ , σ 2 ) , 那么 95% 区间变为 ( μ − 1.96 σ , μ + 1.96 σ ) (\mu-1.96\sigma,\mu+1.96\sigma) ( μ − 1.96 σ , μ + 1.96 σ ) , 通常近似为 μ ± 2 σ \mu\pm2\sigma μ ± 2 σ 假设我们有两个 rv: X X X 和 Y Y Y , 我们可以定义两变量的联合分布 p ( x , y ) = p ( X = x , Y = y ) p(x,y)=p(X=x,Y=y) p ( x , y ) = p ( X = x , Y = y ) .如果两变量取值都是有限的,则可以用一个 2d 表格表示这个联合分布。
p ( X , Y ) p(X,Y) p ( X , Y ) Y = 0 Y=0 Y = 0 Y = 1 Y=1 Y = 1 X = 0 X=0 X = 0 0.2 0.3 X = 1 X=1 X = 1 0.3 0.2
给定一个联合分布,我们定义其中一个 rv 的边缘分布 为:
p ( X = x ) = ∑ y p ( X = x , Y = y ) p(X=x)=\sum_y p(X=x,Y=y) p ( X = x ) = y ∑ p ( X = x , Y = y ) 这有时被称作 sum rule 或者 rule of total probability .
如果两个变量是独立的,即 X ⊥ Y X\bot Y X ⊥ Y ,我们可以用两个边缘分布的乘积来表示联合分布。
我们定义其中一个 rv 的条件分布 是:
p ( Y = y ∣ X = x ) = p ( X = x , Y = y ) p ( X = x ) p(Y=y|X=x)=\frac{p(X=x,Y=y)}{p(X=x)}\\ p ( Y = y ∣ X = x ) = p ( X = x ) p ( X = x , Y = y ) 重新排列这个等式后,我们得到:
p ( x , y ) = p ( x ) p ( y ∣ x ) p(x,y)=p(x)p(y|x) p ( x , y ) = p ( x ) p ( y ∣ x ) 这被称为product rule .
将 product rule 扩展到 D 个变量,我们得到概率的链式法则 :
p ( x 1 : D ) = p ( x 1 ) p ( x 2 ∣ x 1 ) p ( x 3 ∣ x 1 , x 2 ) p ( x 4 ∣ x 1 , x 2 , x 3 ) . . . p ( x D ∣ x 1 : D − 1 ) p(\boldsymbol{x}_{1:D})=p(x_1)p(x_2|x_1)p(x_3|x_1,x_2)p(x_4|x_1,x_2,x_3)...p(x_D|\boldsymbol{x}_{1:D-1}) p ( x 1 : D ) = p ( x 1 ) p ( x 2 ∣ x 1 ) p ( x 3 ∣ x 1 , x 2 ) p ( x 4 ∣ x 1 , x 2 , x 3 ) ... p ( x D ∣ x 1 : D − 1 ) 这为我们提供了一种由一系列条件分布产生高维联合分布的方法,后续会在 Section 3.6 继续探讨。
2.2.4 Independence and conditional independence# 如果我们可以用两个 rv 的边缘分布的乘积来表示联合分布,我们说这两个 rv 是无条件独立的 or 边缘独立的,记作X ⊥ Y X\bot Y X ⊥ Y .
X ⊥ Y ⟺ p ( X , Y ) = p ( X ) p ( Y ) X\bot Y \Longleftrightarrow p(X,Y)=p(X)p(Y) X ⊥ Y ⟺ p ( X , Y ) = p ( X ) p ( Y ) 一般来说,如果联合分布可以写作多个边缘分布的沉积,我们说这些变量都是独立的。
p ( X 1 , . . . , X n ) = ∏ i = 1 n p ( X i ) p(X_1,...,X_n)=\prod^n_{i=1}p(X_i) p ( X 1 , ... , X n ) = i = 1 ∏ n p ( X i ) 不幸的是,无条件独立是十分稀有的,因为大多数变量之间都存在相互的影响。但是这种影响通常不是直接的,而是通过其他变量传导。因此,当且仅当条件联合分布可被写作两个条件边缘分布的乘积时,我们说 X X X 和 Y Y Y 条件独立于 Z Z Z conditionally independent (CI) .
X ⊥ Y ∣ Z ⟺ p ( X , Y ∣ Z ) = p ( X ∣ Z ) p ( Y ∣ Z ) X\bot Y | Z \Longleftrightarrow p(X,Y|Z)=p(X|Z)p(Y|Z) X ⊥ Y ∣ Z ⟺ p ( X , Y ∣ Z ) = p ( X ∣ Z ) p ( Y ∣ Z ) 我们可以将这个假设写作一个图:X − Z − Y X-Z-Y X − Z − Y , 其中将 X X X 和 Y Y Y 的所有依赖关系全部归结于 Z Z Z . 通过使用更大的图,我们可以定义更复杂的联合分布,这些被称作图模型 ,将在 Section 3.6 讨论。
2.2.5 分布的矩 Moments of a distribution# 这一部分我们介绍从概率分布中推导出来的各种总结统计量 summary statistics.
2.2.5.1 Mean of a distribution# 一个分布最常用的性质就是它的均值,or 期望,常记作 μ \mu μ . 连续型变量的均值定义如下:
E [ x ] ≜ ∫ X x p ( x ) d x \mathbb{E}[x]\triangleq \int_{\mathcal{X}}xp(x)dx E [ x ] ≜ ∫ X x p ( x ) d x 如果这个积分不是有限的,则均值无定义;后面我们会看到一些例子。
离散型变量的均值定义如下:
E [ x ] ≜ ∑ x ∈ X x p ( x ) \mathbb{E}[x]\triangleq \sum_{x\in\mathcal{X}}xp(x) E [ x ] ≜ x ∈ X ∑ x p ( x ) 由于平均值是一个线性运算,所以我们有:
E [ a X + b ] = a E [ X ] + b \mathbb{E}[aX+b]=a\mathbb{E}[X]+b E [ a X + b ] = a E [ X ] + b 这被称为期望的线性 。
对于 n 个 rv,它们的和的期望是:
E [ ∑ i = 1 n X i ] = ∑ i = 1 n E [ X i ] \mathbb{E}[\sum_{i=1}^nX_i]=\sum_{i=1}^n\mathbb{E}[X_i] E [ i = 1 ∑ n X i ] = i = 1 ∑ n E [ X i ] 如果他们是独立的,它们的乘积的期望是:
E [ ∏ i = 1 n X i ] = ∏ i = 1 n E [ X i ] \mathbb{E}[\prod_{i=1}^nX_i]=\prod_{i=1}^n\mathbb{E}[X_i] E [ i = 1 ∏ n X i ] = i = 1 ∏ n E [ X i ] 2.2.5.2 Variance of a distribution# 方差描述的是一个分布的分散程度,记作 σ 2 \sigma^2 σ 2 . 定义如下:
V [ X ] ≜ E [ ( X − μ ) 2 ] = ∫ ( x − μ ) 2 p ( x ) d x = ∫ x 2 p ( x ) d x + μ 2 ∫ p ( x ) d x − 2 μ ∫ x p ( x ) d x = E [ X 2 ] − μ 2 \begin{aligned} \mathbb{V}[X] &\triangleq \mathbb{E}[(X-\mu)^2]\\ &=\int(x-\mu)^2p(x)dx \\ &= \int x^2p(x)dx+\mu^2\int p(x)dx-2\mu\int xp(x)dx\\ &=\mathbb{E}[X^2]-\mu^2 \end{aligned} V [ X ] ≜ E [( X − μ ) 2 ] = ∫ ( x − μ ) 2 p ( x ) d x = ∫ x 2 p ( x ) d x + μ 2 ∫ p ( x ) d x − 2 μ ∫ x p ( x ) d x = E [ X 2 ] − μ 2 同时我们还得出:
E [ X 2 ] = μ 2 + σ 2 \mathbb{E}[X^2]=\mu^2+\sigma^2 E [ X 2 ] = μ 2 + σ 2 标准差定义为:
s t d [ X ] ≜ V [ X ] = σ std[X]\triangleq \sqrt{\mathbb{V}[X]}=\sigma s t d [ X ] ≜ V [ X ] = σ 随机变量的漂移 和缩放 与方差的关系:
V [ a X + b ] = a 2 V [ X ] \mathbb{V}[aX+b]=a^2\mathbb{V}[X] V [ a X + b ] = a 2 V [ X ] 对于 n 个独立的 rv,它们的和的方差是方差的和:
V [ ∑ i = 1 n X i ] = ∑ i = 1 n V [ X i ] \mathbb{V}[\sum_{i=1}^nX_i]=\sum_{i=1}^n \mathbb{V}[X_i] V [ i = 1 ∑ n X i ] = i = 1 ∑ n V [ X i ] 它们的乘积的方差也可以推导出来:
V [ ∏ i = 1 n X i ] = E [ ( ∏ i X i ) 2 ] − ( E [ ∏ i X i ] ) 2 = E [ ∏ i X i 2 ] − ( ∏ i E [ X i ] ) 2 = ∏ i E [ X i 2 ] − ∏ i ( E [ X i ] ) 2 = ∏ i ( V [ X i ] + ( E [ X i ] ) 2 ) − ∏ i ( E [ X i ] ) 2 = ∏ i ( σ i 2 + μ i 2 ) − ∏ i μ i 2 \begin{aligned} \mathbb{V}[\prod_{i=1}^nX_i]&=\mathbb{E}[(\prod_{i} X_i)^2]-(\mathbb{E}[\prod_{i} X_i])^2\\ &=\mathbb{E}[\prod_{i} X_i^2]-(\prod_{i}\mathbb{E}[X_i])^2\\ &=\prod_{i}\mathbb{E}[X_i^2]-\prod_{i}(\mathbb{E}[X_i])^2\\ &=\prod_{i}(\mathbb{V}[X_i]+(\mathbb{E}[X_i])^2)-\prod_{i}(\mathbb{E}[X_i])^2\\ &=\prod_{i}(\sigma_i^2+\mu_i^2)-\prod_{i}\mu_i^2 \end{aligned} V [ i = 1 ∏ n X i ] = E [( i ∏ X i ) 2 ] − ( E [ i ∏ X i ] ) 2 = E [ i ∏ X i 2 ] − ( i ∏ E [ X i ] ) 2 = i ∏ E [ X i 2 ] − i ∏ ( E [ X i ] ) 2 = i ∏ ( V [ X i ] + ( E [ X i ] ) 2 ) − i ∏ ( E [ X i ] ) 2 = i ∏ ( σ i 2 + μ i 2 ) − i ∏ μ i 2 2.2.5.3 Mode of a distribution# The mode of a distribution: 概率密度或概率质量函数的最大值所在点
x ∗ = arg max x p ( x ) \boldsymbol{x}^*=\mathop{\arg\max}\limits_{\boldsymbol{x}}\ p(\boldsymbol{x}) x ∗ = x arg max p ( x ) 如果分布是 multimodal 的,则模不唯一,但即使是唯一的,这也不是一个很好的总结参数。
2.2.5.4 条件矩 Conditional moments# 当我们有两个或更多互相依赖的 rv 时,我们可以给定一个的条件来计算另一个。例如,期望迭代定理 ,或者说全期望定理 ,告诉我们:
E [ X ] = E Y [ E [ X ∣ Y ] ] \mathbb{E}[X]=\mathbb{E}_Y[\mathbb{E}[X|Y]] E [ X ] = E Y [ E [ X ∣ Y ]] 证明: for X and Y are both discrete rv
E Y [ E [ X ∣ Y ] ] = E Y [ ∑ x x p ( X = x ∣ Y ) ] = ∑ y [ ∑ x x p ( X = x ∣ Y ) ] p ( Y = y ) = ∑ x , y x p ( X = x , Y = y ) = E [ X ] \begin{aligned} \mathbb{E}_Y[\mathbb{E}[X|Y]]&=\mathbb{E}_Y[\sum_x xp(X=x|Y)]\\ &=\sum_y[\sum_x xp(X=x|Y)]p(Y=y)\\ &=\sum_{x,y}xp(X=x,Y=y)\\ &=\mathbb{E}[X] \end{aligned} E Y [ E [ X ∣ Y ]] = E Y [ x ∑ x p ( X = x ∣ Y )] = y ∑ [ x ∑ x p ( X = x ∣ Y )] p ( Y = y ) = x , y ∑ x p ( X = x , Y = y ) = E [ X ] 为了一个更直观的解释,考虑如下的简单例子。令 X X X 为一个灯泡的寿命,令 Y Y Y 为制造灯泡的工厂,假设 E [ X ∣ Y = 1 ] = 5000 , E [ X ∣ Y = 2 ] = 4000 \mathbb{E}[X|Y=1]=5000, \mathbb{E}[X|Y=2]=4000 E [ X ∣ Y = 1 ] = 5000 , E [ X ∣ Y = 2 ] = 4000 , 且工厂 1 制造了 60% 的灯泡,即 p ( Y = 1 ) = 0.6 , p ( Y = 2 ) = 0.4 p(Y=1)=0.6, p(Y=2)=0.4 p ( Y = 1 ) = 0.6 , p ( Y = 2 ) = 0.4 , 则其中一个随机灯泡的期望寿命为:
E [ X ] = E [ X ∣ Y = 1 ] p ( Y = 1 ) + E [ X ∣ Y = 2 ] p ( Y = 2 ) = 5000 × 0.6 + 4000 × 0.4 = 4600 \begin{aligned} \mathbb{E}[X]&=\mathbb{E}[X|Y=1]p(Y=1)+\mathbb{E}[X|Y=2]p(Y=2)\\ &=5000\times 0.6+ 4000\times 0.4=4600 \end{aligned} E [ X ] = E [ X ∣ Y = 1 ] p ( Y = 1 ) + E [ X ∣ Y = 2 ] p ( Y = 2 ) = 5000 × 0.6 + 4000 × 0.4 = 4600 同样,方差也有类似的公式,称作全方差定理 or 条件方差公式 :
V [ X ] = E Y [ V [ X ∣ Y ] ] + V Y [ E [ X ∣ Y ] ] \mathbb{V}[X]=\mathbb{E}_Y[\mathbb{V}[X|Y]]+\mathbb{V}_Y[\mathbb{E}[X|Y]] V [ X ] = E Y [ V [ X ∣ Y ]] + V Y [ E [ X ∣ Y ]] 为了证明此定理,我们首先定义一些条件矩:μ X ∣ Y = E [ X ∣ Y ] , s X ∣ Y = E [ X 2 ∣ Y ] , σ X ∣ Y 2 = V [ X ∣ Y ] = s X ∣ Y − μ X ∣ Y 2 \mu_{X|Y}=\mathbb{E}[X|Y],\ s_{X|Y}=\mathbb{E}[X^2|Y],\ \sigma^2_{X|Y}=\mathbb{V}[X|Y]=s_{X|Y}-\mu^2_{X|Y} μ X ∣ Y = E [ X ∣ Y ] , s X ∣ Y = E [ X 2 ∣ Y ] , σ X ∣ Y 2 = V [ X ∣ Y ] = s X ∣ Y − μ X ∣ Y 2
这些都是关于Y的函数(因此都是随机量)
接下来可以得到
V [ X ] = E [ X 2 ] − ( E [ X ] ) 2 = E Y [ E [ X 2 ∣ Y ] ] − ( E Y [ E [ X ∣ Y ] ] ) 2 = E Y [ s X ∣ Y ] − ( E Y [ μ X ∣ Y ] ) 2 = E Y [ σ X ∣ Y 2 ] + E Y [ μ X ∣ Y 2 ] − ( E Y [ μ X ∣ Y ] ) 2 = E Y [ V [ X ∣ Y ] ] + V Y [ μ X ∣ Y ] = E Y [ V [ X ∣ Y ] ] + V Y [ E [ X ∣ Y ] ] \begin{aligned} \mathbb{V}[X]&=\mathbb{E}[X^2]-(\mathbb{E}[X])^2\\ &=\mathbb{E}_Y[\mathbb{E}[X^2|Y]]-(\mathbb{E}_Y[\mathbb{E}[X|Y]])^2\\ &=\mathbb{E}_Y[s_{X|Y}]-(\mathbb{E}_Y[\mu_{X|Y}])^2\\ &=\mathbb{E}_Y[\sigma^2_{X|Y}]+\mathbb{E}_Y[\mu^2_{X|Y}]-(\mathbb{E}_Y[\mu_{X|Y}])^2\\ &=\mathbb{E}_Y[\mathbb{V}[X|Y]]+\mathbb{V}_Y[\mu_{X|Y}]\\ &=\mathbb{E}_Y[\mathbb{V}[X|Y]]+\mathbb{V}_Y[\mathbb{E}[X|Y]] \end{aligned} V [ X ] = E [ X 2 ] − ( E [ X ] ) 2 = E Y [ E [ X 2 ∣ Y ]] − ( E Y [ E [ X ∣ Y ]] ) 2 = E Y [ s X ∣ Y ] − ( E Y [ μ X ∣ Y ] ) 2 = E Y [ σ X ∣ Y 2 ] + E Y [ μ X ∣ Y 2 ] − ( E Y [ μ X ∣ Y ] ) 2 = E Y [ V [ X ∣ Y ]] + V Y [ μ X ∣ Y ] = E Y [ V [ X ∣ Y ]] + V Y [ E [ X ∣ Y ]]
为了直观理解这些公式,我们考虑 K K K 个单变量高斯分布的混合,令 Y Y Y 为确定使用哪个混合部分的隐含变量,并且令 X = ∑ y = 1 K π y N ( X ∣ μ y , σ y ) X=\sum_{y=1}^K\pi_y\mathcal{N}(X|\mu_y,\sigma_y) X = ∑ y = 1 K π y N ( X ∣ μ y , σ y ) . 上图所示的是两个高斯变量的混合,且 π 1 = π 2 = 0.5 , μ 1 = 0 , μ 2 = 2 , σ 1 2 = σ 2 2 = 0.5 \pi_1=\pi_2=0.5, \mu_1=0,\mu_2=2,\sigma^2_1=\sigma^2_2=0.5 π 1 = π 2 = 0.5 , μ 1 = 0 , μ 2 = 2 , σ 1 2 = σ 2 2 = 0.5 . 因此:
E [ V [ X ∣ Y ] ] = π 1 σ 1 2 + π 2 σ 2 2 = 0.5 V [ E [ X ∣ Y ] ] = π 1 ( μ 1 − μ ˉ ) 2 + π 2 ( μ 2 − μ ˉ ) 2 = 0.5 ( 0 − 1 ) 2 + 0.5 ( 2 − 1 ) 2 = 1 \begin{aligned} \mathbb{E}[\mathbb{V}[X|Y]]&=\pi_1\sigma_1^2+\pi_2\sigma_2^2=0.5\\ \mathbb{V}[\mathbb{E}[X|Y]]&=\pi_1(\mu_1-\bar{\mu})^2+\pi_2(\mu_2-\bar{\mu})^2\\ &=0.5(0-1)^2+0.5(2-1)^2\\ &=1 \end{aligned} E [ V [ X ∣ Y ]] V [ E [ X ∣ Y ]] = π 1 σ 1 2 + π 2 σ 2 2 = 0.5 = π 1 ( μ 1 − μ ˉ ) 2 + π 2 ( μ 2 − μ ˉ ) 2 = 0.5 ( 0 − 1 ) 2 + 0.5 ( 2 − 1 ) 2 = 1 2.2.6 Limitations of summary statistics# 尽管我们习惯用均值和方差这些简单的统计量来概括一个概率分布或从一个分布中获得的抽样,这样做会导致很多信息丢失。下图所示的是安斯库姆四重奏 Anscombe’s quartet
这四组数据均包含10个点,它们的低阶统计量都是相同的,但是他们的分布差别非常大。Anscombe构造这四组数据集的主要目的是反驳一些统计学家认为数量概括的重要性远超于数据可视化的观点。
从 1d 数据集中也可以构造出类似的数据,如上图所示,所有7个数据集有相同的中位数和四分位距(IQR),所以在 box plot 上显示不出任何差异;此时使用 violin plot 是一个更好的可视化选择,除了中位数和四分位距,还显示出了1维核密度估计,但是这个方法仅限于1维数据。
2.3 Bayes’ rule# Bayes’s theorem is to the theory of probability what Pythagoras’s theorem is to geometry. — Sir Harold Jeffreys, 1973
这一部分我们讨论贝叶斯推断 的基础。术语”inference” (推断) 在 Merriam-Webster 词典内的解释是:“the act of passing from sample data to genralizations, usually with calculated degrees of certainty”. 术语”Bayesian” (贝叶斯) 用于指使用概率论来表示确定度的推理方法,并利用贝叶斯规则来更新给定数据的确定度。
贝叶斯规则本身是很简单的,给定一些观察数据 Y = y Y=y Y = y , 计算未知数量 H H H 的可能取值的概率分布:
p ( H = h ∣ Y = y ) = p ( H = h ) p ( Y = y ∣ H = h ) p ( Y = y ) p(H=h|Y=y)=\frac{p(H=h)p(Y=y|H=h)}{p(Y=y)} p ( H = h ∣ Y = y ) = p ( Y = y ) p ( H = h ) p ( Y = y ∣ H = h ) 它是从如下公式中很自然的推导出的:
p ( h ∣ y ) p ( y ) = p ( h ) p ( y ∣ h ) = p ( h , y ) p(h|y)p(y)=p(h)p(y|h)=p(h,y) p ( h ∣ y ) p ( y ) = p ( h ) p ( y ∣ h ) = p ( h , y ) 而这个公式又是由概率的乘法法则 推导出来。
在公式 (39) 中,p ( H ) p(H) p ( H ) 代表我们在看到任何数据之前所知的 H H H 的可能取值;这被称为先验分布 。假设 H H H 有 K K K 个可能取值,那么 p ( H ) p(H) p ( H ) 是一个 K K K 个概率的向量,和为1。
p ( Y ∣ H = h ) p(Y|H=h) p ( Y ∣ H = h ) 代表 H = h H=h H = h 的条件下,我们期望观察到的 Y Y Y 的可能的结果分布;这被称为观察分布 。当我们在实际观察时评估 y y y ,我们就得到了函数 p ( Y = y ∣ H = h ) p(Y=y|H=h) p ( Y = y ∣ H = h ) ,这被称作似然 。似然函数是一个关于 h h h 的函数,y y y 是固定的,但是这不是一个概率分布,因为它加和不是1。
对于每个 h h h , 先验分布 p ( H ) p(H) p ( H ) 乘以似然函数 p ( Y = y ∣ H = h ) p(Y=y|H=h) p ( Y = y ∣ H = h ) 给定了一个未标准化的联合分布 p ( H = h , Y = y ) p(H=h, Y=y) p ( H = h , Y = y ) . 我们可以将它除以 p ( Y = y ) p(Y=y) p ( Y = y ) ,转化为一个标准分布。
p ( Y = y ) p(Y=y) p ( Y = y ) 是一个独立于 H H H 的常数,称为边缘似然 marginal likelihood ,因为它的计算方式是通过边缘化未知的 H H H :
p ( Y = y ) = ∑ h ′ ∈ H p ( H = h ′ ) p ( Y = y ∣ H = h ′ ) = ∑ h ′ ∈ H p ( H = h ′ , Y = y ) p(Y=y)=\sum_{h'\in\cal{H}}p(H=h')p(Y=y|H=h')=\sum_{h'\in\cal{H}}p(H=h',Y=y) p ( Y = y ) = h ′ ∈ H ∑ p ( H = h ′ ) p ( Y = y ∣ H = h ′ ) = h ′ ∈ H ∑ p ( H = h ′ , Y = y ) 通过对每个 h h h 计算 p ( H = h , Y = y ) / p ( Y = y ) {p(H=h,Y=y)}/{p(Y=y)} p ( H = h , Y = y ) / p ( Y = y ) 标准化联合分布,得到后验概率 p ( H = h ∣ Y = y ) p(H=h|Y=y) p ( H = h ∣ Y = y ) ;这代表了我们对于 H H H 所有可能取值的新的信念状态 belief state .
贝叶斯定理可以用文字总结为:posterier ∝ \varpropto ∝ prior × \times × likelihood
给定一些相关观察数据,用贝叶斯定理来更新一些未知量的分布的过程被称作Bayesian inference , or posterior inference or probabilistic inference .
2.3.1 Example: Testing for COVID-19# 你想做一个 COVID-19 的诊断检测,并且希望根据结果来判断自己是否感染。令 H = 1 H=1 H = 1 为已感染,H = 0 H=0 H = 0 为未感染,Y = 1 Y=1 Y = 1 为检测阳性,Y = 0 Y=0 Y = 0 为检测阴性。我们希望计算 p ( H = h ∣ Y = y ) f o r h ∈ { 0 , 1 } p(H=h|Y=y)\ \ for\ \ h\in\{0,1\} p ( H = h ∣ Y = y ) f or h ∈ { 0 , 1 } ,Y Y Y 为观察的检测结果。这是一个二分类问题,H H H 可以看作未知的类别标签,而 y y y 是特征向量。
首先我们必须确定似然函数,这个量显然依赖于这个检测的可靠性。这里有两个关键参数:
sensitivity , aka true positive rate is defined as p ( Y = 1 ∣ H = 1 ) p(Y=1|H=1) p ( Y = 1∣ H = 1 ) false negative rate = 1 - true positive rate specificity , aka true negative rate is defined as p ( Y = 0 ∣ H = 0 ) p(Y=0|H=0) p ( Y = 0∣ H = 0 ) false positive rate = 1 - true negative rate 在这里,我们设定 sensitivity = 87.5%,specificity = 97.5%.
Truth\Observation 0 1 0 TNR=0.975 FPR=0.025 1 FNR=0.125 TPR=0.875
接下来需要确定先验分布,p ( H = 1 ) p(H=1) p ( H = 1 ) 表示的是疾病在你所住的地区的流行度,我们先设定 p ( H = 1 ) = 0.1 p(H=1)=0.1 p ( H = 1 ) = 0.1 (10%).
假设你检测呈阳性:
p ( H = 1 ∣ Y = 1 ) = p ( H = 1 ) p ( Y = 1 ∣ H = 1 ) p ( Y = 1 ) = p r i o r × T P R p r i o r × T P R + ( 1 − p r i o r ) × F P R = 0.1 × 0.875 0.1 × 0.875 + 0.9 × 0.025 = 0.795 \begin{aligned} p(H=1|Y=1)&=\frac{p(H=1)p(Y=1|H=1)}{p(Y=1)}\\ &=\frac{prior\times TPR}{prior\times TPR + (1-prior)\times FPR}\\ &=\frac{0.1\times 0.875}{0.1\times 0.875 + 0.9\times 0.025}\\ &=0.795 \end{aligned} p ( H = 1∣ Y = 1 ) = p ( Y = 1 ) p ( H = 1 ) p ( Y = 1∣ H = 1 ) = p r i or × TPR + ( 1 − p r i or ) × FPR p r i or × TPR = 0.1 × 0.875 + 0.9 × 0.025 0.1 × 0.875 = 0.795 也就是说此时你有 79.5%的概率被感染了。
假设你检测呈阴性:
p ( H = 1 ∣ Y = 0 ) = p ( H = 1 ) p ( Y = 0 ∣ H = 1 ) p ( Y = 0 ) = p r i o r × F N R p r i o r × F N R + ( 1 − p r i o r ) × T N R = 0.1 × 0.125 0.1 × 0.125 + 0.9 × 0.975 = 0.014 \begin{aligned} p(H=1|Y=0)&=\frac{p(H=1)p(Y=0|H=1)}{p(Y=0)}\\ &=\frac{prior\times FNR}{prior\times FNR + (1-prior)\times TNR}\\ &=\frac{0.1\times 0.125}{0.1\times 0.125 + 0.9\times 0.975}\\ &=0.014 \end{aligned} p ( H = 1∣ Y = 0 ) = p ( Y = 0 ) p ( H = 1 ) p ( Y = 0∣ H = 1 ) = p r i or × FNR + ( 1 − p r i or ) × TNR p r i or × FNR = 0.1 × 0.125 + 0.9 × 0.975 0.1 × 0.125 = 0.014 也就是说此时你有 1.4% 的概率被感染了。
假设我们根据现在的 COVID-19 感染率,将先验概率降到 1%,重复上述计算,我们分别会得到 26% 和 0.13% 的后验概率。这是一个反直觉的事实,即使你被检测为阳性,你感染的概率仍然仅有 26%,这是因为这个疾病仍是很少见的,所以大部分检测阳性都是假阳性。为了更好的理解,我们假设有 100,000 个人,其中 1% 的人被感染了。感染的人中,87.5% 的人,也就是 87.5 % × 100 , 000 × 1 % = 875 87.5\%\times100,000\times 1\% = 875 87.5% × 100 , 000 × 1% = 875 人被检测为阳性,而未感染人中 2.5 % × 100 , 000 × ( 1 − 1 % ) = 2475 2.5\%\times100,000\times(1-1\%)=2475 2.5% × 100 , 000 × ( 1 − 1% ) = 2475 人被检测为阳性,所以后验概率为 875 / 875 + 2475 = 0.26 875/875+2475=0.26 875/875 + 2475 = 0.26 .
当然,上述计算是在我们假设已知检测 sensitivity 和 specificity 的情况下进行的,至于无法确定这些参数情况下如何应用贝叶斯定理,参见论文GC20 .
2.3.2 Example: The Monty Hall problem# 著名的三门问题
2.3.3 Inverse problem# 概率论关心的是在给定现在状态的条件 or 假设的情况下预测未来结果的分布。与之相反的是,inverse probability 关心的是从观测结果推测现在的状态,即反转 h → y h\rightarrow y h → y mapping.
例如,考虑从一个二维图像 y y y 推测三维形状 h h h , 这是视觉场景理解领域的经典问题,但这是一个病态 ill-posed 问题,因为有多个 h h h 对应一个 y y y , 如下图所示。同样,自然语言理解也是一个病态问题,听者必须从说话人的模糊语句中推测意图 h h h .
为了解决这些反问题 ,我们可以运用贝叶斯定理来计算后验 p ( h ∣ y ) p(h|y) p ( h ∣ y ) ,它对于当下可能的状态给定了一个分布。这需要我们确定正向模型 p ( y ∣ h ) p(y|h) p ( y ∣ h ) 和先验 p ( h ) p(h) p ( h ) , 具体内容会在下一本书中探讨。
2.4 伯努利和二项分布 Bernoulli and binomial distributions# 2.4.1 Definition# 伯努利分布 可能是最简单的概率分布,用于建模二元事件。考虑抛一枚硬币,正面朝上的概率为 0 ≤ θ ≤ 1 0\leq \theta\leq 1 0 ≤ θ ≤ 1 . 令 Y = 1 Y=1 Y = 1 为正面朝上, 则 p ( Y = 1 ) = θ , p ( Y = 0 ) = 1 − θ p(Y=1)=\theta,\ p(Y=0)=1-\theta p ( Y = 1 ) = θ , p ( Y = 0 ) = 1 − θ . 这就是伯努利分布,记作:
Y ∼ B e r ( θ ) Y\sim \mathrm{Ber}(\theta) Y ∼ Ber ( θ ) ∼ \sim ∼ 意为 “is sampled from” or “is distributed as”, B e r Ber B er 指伯努利. 该分布的概率质量函数 pmf 定义如下:
B e r ( y ∣ θ ) = { 1 − θ i f y = 0 θ i f y = 1 \mathrm{Ber}(y|\theta)=\begin{cases} 1-\theta & \mathrm{if}\ \ y=0\\ \theta & \mathrm{if}\ \ y=1 \end{cases} Ber ( y ∣ θ ) = { 1 − θ θ if y = 0 if y = 1 更简洁版本:
B e r ( y ∣ θ ) ≜ θ y ( 1 − θ ) 1 − y \mathrm{Ber}(y|\theta)\triangleq \theta^y(1-\theta)^{1-y} Ber ( y ∣ θ ) ≜ θ y ( 1 − θ ) 1 − y 伯努利分布是二项分布 的一个特殊情况。N次伯努利试验的结果服从一个二项分布:
B i n ( s ∣ N , θ ) ≜ ( N s ) θ s ( 1 − θ ) N − s w h e r e ( N k ) ≜ N ! ( N − k ) ! k ! \mathrm{Bin}(s|N,\theta)\triangleq \dbinom{N}{s}\theta^s(1-\theta)^{N-s}\\ \mathrm{where}\quad \dbinom{N}{k}\triangleq \frac{N!}{(N-k)!k!} Bin ( s ∣ N , θ ) ≜ ( s N ) θ s ( 1 − θ ) N − s where ( k N ) ≜ ( N − k )! k ! N ! ( N k ) \tbinom{N}{k} ( k N ) 即为二项式系数,发音 “N choose k”.
2.4.2 Sigmoid (logistic) function# 当我们想根据一些输入数据 x ∈ X x\in \cal{X} x ∈ X , 预测一个二元变量 y ∈ { 0 , 1 } y\in\{0,1\} y ∈ { 0 , 1 } , 我们需要利用一个条件概率分布 :
p ( y ∣ x , θ ) = B e r ( y ∣ f ( x , θ ) ) p(y|\boldsymbol{x},\boldsymbol{\theta})=\mathrm{Ber}(y|f(\boldsymbol{x},\boldsymbol{\theta})) p ( y ∣ x , θ ) = Ber ( y ∣ f ( x , θ )) 其中 f ( x , θ ) f(\boldsymbol{x},\boldsymbol{\theta}) f ( x , θ ) 是一些可以预测输出分布的平均参数的函数。我们后面会考虑许多不同类型的函数。
为了避免 0 ≤ f ( x , θ ) ≤ 1 0\leq f(\boldsymbol{x},\boldsymbol{\theta})\leq1 0 ≤ f ( x , θ ) ≤ 1 的要求,我们可以使 f f f 为任意函数,然后使用如下的模型:
p ( y ∣ x , θ ) = B e r ( y ∣ σ ( f ( x , θ ) ) ) p(y|\boldsymbol{x},\boldsymbol{\theta})=\mathrm{Ber}(y|\boldsymbol\sigma (f(\boldsymbol{x},\boldsymbol{\theta}))) p ( y ∣ x , θ ) = Ber ( y ∣ σ ( f ( x , θ ))) 这里 σ ( ) \boldsymbol\sigma() σ ( ) 是 sigmoid or logistic function,定义如下:
σ ≜ 1 1 + e − a \boldsymbol\sigma\triangleq \frac{1}{1+e^{-a}} σ ≜ 1 + e − a 1 其中 a = f ( x , θ ) a=f(\boldsymbol{x},\boldsymbol{\theta}) a = f ( x , θ ) . “Sigmoid” 意为 “S-shaped”. 如下图所示,sigmoid 函数将整个实数域映射到 [ 0 , 1 ] [0, 1] [ 0 , 1 ] 之间,这是将输出转换为概率的关键性质。
使用 sigmoid 函数的定义代入方程 (49) 可得:
p ( y = 1 ∣ x , θ ) = σ ( a ) p ( y = 0 ∣ x , θ ) = 1 − σ ( a ) = σ ( − a ) p(y=1|\boldsymbol{x},\boldsymbol{\theta})=\boldsymbol\sigma(a)\\ p(y=0|\boldsymbol{x},\boldsymbol{\theta})=1-\boldsymbol\sigma(a)=\boldsymbol\sigma(-a) p ( y = 1∣ x , θ ) = σ ( a ) p ( y = 0∣ x , θ ) = 1 − σ ( a ) = σ ( − a ) a a a 的值等于log odds ,log ( p 1 − p ) \log(\frac{p}{1-p}) log ( 1 − p p ) ,其中 p = p ( y = 1 ∣ x ; θ ) p=p(y=1|\boldsymbol{x};\boldsymbol{\theta}) p = p ( y = 1∣ x ; θ ) . 证明如下:
log ( p 1 − p ) = log ( e a 1 + e a 1 + e a 1 ) = log ( e a ) = a \log(\frac{p}{1-p})=\log(\frac{e^a}{1+e^a}\frac{1+e^a}{1})=\log(e^a)=a log ( 1 − p p ) = log ( 1 + e a e a 1 1 + e a ) = log ( e a ) = a sigmoid 函数将 log-odds a a a 映射到 p p p :
p = l o g i s t i c ( a ) = σ ( a ) = e a 1 + e a p=\mathrm{logistic}(a)=\boldsymbol\sigma(a)=\frac{e^a}{1+e^a} p = logistic ( a ) = σ ( a ) = 1 + e a e a sigmoid 函数的反函数是对率函数 (logit function ),将 p p p 映射到 log-odds a a a :
a = l o g i t ( p ) = σ − 1 ( p ) ≜ log ( p 1 − p ) a=\mathrm{logit}(p)=\boldsymbol\sigma^{-1}(p)\triangleq\log(\frac{p}{1-p}) a = logit ( p ) = σ − 1 ( p ) ≜ log ( 1 − p p ) Sigmoid 函数的一些常用性质 σ ( x ) ≜ 1 1 + e − x = e x 1 + e x \boldsymbol\sigma(x)\triangleq \frac{1}{1+e^{-x}}=\frac{e^x}{1+e^x} σ ( x ) ≜ 1 + e − x 1 = 1 + e x e x d d x σ ( x ) = σ ( x ) ( 1 − σ ( x ) ) \frac{d}{dx}\boldsymbol\sigma(x)=\boldsymbol\sigma(x)(1-\boldsymbol\sigma(x)) d x d σ ( x ) = σ ( x ) ( 1 − σ ( x )) 1 − σ ( x ) = σ ( − x ) 1-\boldsymbol\sigma(x)=\boldsymbol\sigma(-x) 1 − σ ( x ) = σ ( − x ) σ − 1 ( p ) = log ( p 1 − p ) ≜ l o g i t ( p ) \boldsymbol\sigma^{-1}(p)=\log(\frac{p}{1-p})\triangleq \mathrm{logit}(p) σ − 1 ( p ) = log ( 1 − p p ) ≜ logit ( p ) σ + ( x ) ≜ log ( 1 + e x ) ≜ s o f t p l u s ( x ) \sigma_{+}(x)\triangleq\log(1+e^x)\triangleq \mathrm{softplus}(x) σ + ( x ) ≜ log ( 1 + e x ) ≜ softplus ( x ) d d x σ + ( x ) = σ ( x ) \frac{d}{dx}\sigma_+(x)=\boldsymbol\sigma(x) d x d σ + ( x ) = σ ( x )
2.4.3 Binary logistic regression# 这一部分我们使用一个条件伯努利模型,其中我们使用一个线性预测函数:f ( x ; θ ) = w T x + b f(\boldsymbol{x};\boldsymbol{\theta})=\boldsymbol{w}^\mathsf{T}\boldsymbol{x}+b f ( x ; θ ) = w T x + b . 模型形式如下:
p ( y ∣ x ; θ ) = B e r ( y ∣ σ ( w T x + b ) ) p(y|\boldsymbol{x};\boldsymbol{\theta})=\mathrm{Ber}(y|\boldsymbol\sigma (\boldsymbol{w}^\mathsf{T}\boldsymbol{x}+b)) p ( y ∣ x ; θ ) = Ber ( y ∣ σ ( w T x + b )) 另一个形式:
p ( y = 1 ∣ x ; θ ) = σ ( w T x + b ) = 1 1 + e − ( w T x + b ) p(y=1|\boldsymbol{x};\boldsymbol{\theta})=\boldsymbol\sigma (\boldsymbol{w}^\mathsf{T}\boldsymbol{x}+b)=\frac{1}{1+e^{-(\boldsymbol{w}^\mathsf{T}\boldsymbol{x}+b)}} p ( y = 1∣ x ; θ ) = σ ( w T x + b ) = 1 + e − ( w T x + b ) 1 这被称为logistic regression .
对于一个 1-dimensional, 2-class 分类问题, decision boundary 决策边界指的是使得 p ( y = 1 ∣ x = x ∗ , θ ) = 0.5 p(y=1|x=x^*,\boldsymbol{\theta})=0.5 p ( y = 1∣ x = x ∗ , θ ) = 0.5 的 x ∗ x^* x ∗ 值。后续更多关于 logistic regression 的细节,见第10章。
2.5 Categorical and multinomial distributions# 当我们需要表示有限的一列标签 y ∈ { 1 , . . . , C } y\in\{1,...,C\} y ∈ { 1 , ... , C } 的分布时,我们可以把伯努利分布扩展到 C > 2 C>2 C > 2 的情况,使用 categorical distribution 类别分布。
2.5.1 Definition# 类别分布是一个离散概率分布,每个类别一个参数:
M ( y ∣ θ ) ≜ ∏ c = 1 C θ c I ( y = c ) \mathcal{M}(y|\boldsymbol\theta)\triangleq\prod_{c=1}^{C}\theta_c^{\mathbb{I}(y=c)} M ( y ∣ θ ) ≜ c = 1 ∏ C θ c I ( y = c ) 也就是说,p ( y = c ∣ θ ) = θ c p(y=c|\boldsymbol\theta)=\theta_c p ( y = c ∣ θ ) = θ c . 其中 0 ≤ θ c ≤ 1 , ∑ c = 1 C θ c = 1 0\leq\theta_c\leq1,\ \sum_{c=1}^C\theta_c=1 0 ≤ θ c ≤ 1 , ∑ c = 1 C θ c = 1 . 所以只有 C − 1 C-1 C − 1 个独立参数。
我们还可以将离散变量 y y y 转化为一个 C 个元素的one-hot vector , 然后我们可以将类别分布记作:
M ( y ∣ θ ) ≜ ∏ c = 1 C θ c y c \mathcal{M}(y|\boldsymbol\theta)\triangleq\prod_{c=1}^{C}\theta_c^{y_c} M ( y ∣ θ ) ≜ c = 1 ∏ C θ c y c 类别分布是多项分布 的特殊情况。N 次类别试验的结果服从一个多项分布:
M ( s ∣ N , θ ) ≜ ( N s 1 . . . s C ) ∏ c = 1 C θ c s c w h e r e ( N s 1 . . . s C ) ≜ N ! s 1 ! s 2 ! ⋯ s C ! \mathcal{M}(\boldsymbol{s}|N,\boldsymbol\theta)\triangleq\dbinom{N}{s_1...s_C}\prod_{c=1}^{C}\theta_c^{s_c}\\ \mathrm{where}\quad \dbinom{N}{s_1...s_C}\triangleq\frac{N!}{s_1!s_2!\cdots s_C!} M ( s ∣ N , θ ) ≜ ( s 1 ... s C N ) c = 1 ∏ C θ c s c where ( s 1 ... s C N ) ≜ s 1 ! s 2 ! ⋯ s C ! N ! ( N s 1 . . . s C ) \dbinom{N}{s_1...s_C} ( s 1 ... s C N ) 是多项式系数,等于将 N = ∑ c = 1 C s c N=\sum_{c=1}^Cs_c N = ∑ c = 1 C s c 大小的集合分成从 s 1 s_1 s 1 到 s C s_C s C 大小的子集的方法数。
2.5.2 Softmax function# 多项分布的条件概率:
p ( y ∣ x , θ ) = M ( y ∣ f ( x ; θ ) ) p(y|\boldsymbol{x},\boldsymbol{\theta})=\mathcal{M}(y|f(\boldsymbol{x};\boldsymbol{\theta})) p ( y ∣ x , θ ) = M ( y ∣ f ( x ; θ )) 也可以写成:
p ( y ∣ x , θ ) = M ( y ∣ 1 , f ( x ; θ ) ) w h e r e 0 ≤ f c ( x ; θ ) ≤ 1 , ∑ c = 1 C f c ( x ; θ ) = 1 p(y|\boldsymbol{x},\boldsymbol{\theta})=\mathcal{M}(y|1,f(\boldsymbol{x};\boldsymbol{\theta}))\\ \mathrm{where}\quad 0\leq f_c(\boldsymbol{x};\boldsymbol{\theta})\leq1, \ \ \sum_{c=1}^Cf_c(\boldsymbol{x};\boldsymbol{\theta})=1 p ( y ∣ x , θ ) = M ( y ∣1 , f ( x ; θ )) where 0 ≤ f c ( x ; θ ) ≤ 1 , c = 1 ∑ C f c ( x ; θ ) = 1 为了避免限制条件,通常对 f f f 的输出使用softmax function aka multinomial logit :
S ( a ) ≜ [ e a 1 ∑ c ′ = 1 C e a c ′ , ⋯ , e a C ∑ c ′ = 1 C e a c ′ ] w h e r e 0 ≤ S ( a ) c ≤ 1 , ∑ c = 1 C S ( a ) c = 1 \mathcal{S}(\boldsymbol{a})\triangleq[\frac{e^{a_1}}{\sum_{c'=1}^Ce^{a_{c'}}},\cdots,\frac{e^{a_C}}{\sum_{c'=1}^Ce^{a_{c'}}}]\\ \mathrm{where}\quad 0\leq\mathcal{S}(\boldsymbol{a})_c\leq1, \ \ \sum_{c=1}^C\mathcal{S}(\boldsymbol{a})_c=1 S ( a ) ≜ [ ∑ c ′ = 1 C e a c ′ e a 1 , ⋯ , ∑ c ′ = 1 C e a c ′ e a C ] where 0 ≤ S ( a ) c ≤ 1 , c = 1 ∑ C S ( a ) c = 1 softmax的输入 a = f ( x ; θ ) \boldsymbol{a}=f(\boldsymbol{x};\boldsymbol{\theta}) a = f ( x ; θ ) 称作logits ,是log odds的扩展。
softmax 函数叫这个名字是因为它的作用有点像 argmax 函数。要探索这个性质,我们将每个 a c a_c a c 除以常数 T T T ,称作 temperature 。当 T → 0 T\rightarrow 0 T → 0 ,我们发现:
S ( a / T ) c = { 1.0 i f c = arg max c ′ a c ′ 0.0 o t h e r w i s e \mathcal{S}(\boldsymbol{a}/T)_c=\begin{cases} 1.0 & \mathrm{if}\ \ c=\arg\max_{c'}a_{c'} \\ 0.0 & \mathrm{otherwise} \end{cases} S ( a / T ) c = { 1.0 0.0 if c = arg max c ′ a c ′ otherwise 也就是说,在低温度情况下,这个分布会把大部分的概率质量放在可能性最大的状态(winner takes all ),高温度状态下,质量分布会变得均匀。如下图所示:
2.5.3 Multiclass logistic regression# 如果我们使用线性预测函数:f ( x ; θ ) = W x + b f(\boldsymbol{x};\boldsymbol{\theta})=\mathrm{W}\boldsymbol{x}+\boldsymbol{b} f ( x ; θ ) = W x + b ,其中 W \mathrm{W} W 是一个 C × D C\times D C × D 的矩阵,b \boldsymbol{b} b 是一个 C C C 维偏置向量,上个部分的模型可以写成:
p ( y ∣ x ; θ ) = M ( y ∣ S ( W x + b ) ) p(y|\boldsymbol{x};\boldsymbol{\theta})=\mathcal{M}(y|\mathcal{S}(\mathrm{W}\boldsymbol{x}+\boldsymbol{b})) p ( y ∣ x ; θ ) = M ( y ∣ S ( W x + b )) 令 a = W x + b \boldsymbol{a}=\mathrm{W}\boldsymbol{x}+\boldsymbol{b} a = W x + b 为 C C C 维logits 向量。我们可以将上式写作:
p ( y = c ∣ x ; θ ) = e a c ∑ c ′ = 1 C e a c ′ p(y=c|\boldsymbol{x};\boldsymbol{\theta})=\frac{e^{a_c}}{\sum_{c'=1}^C e^{a_{c'}}} p ( y = c ∣ x ; θ ) = ∑ c ′ = 1 C e a c ′ e a c 这就是multinomial logistic regression .
如下图所示,仅使用 iris 数据集的 2 个 feature 的三类 logistic regression 的结果,可以看出决策边界都是线性的。后面我们会讨论怎么用特征变换使线性边界变为非线性边界。
2.5.4 Log-sum-exp trick# 本节我们讨论使用 softmax 分布的一个重要细节。假设我们想计算标准概率 p c = p ( y = c ∣ x ) p_c=p(y=c|\boldsymbol{x}) p c = p ( y = c ∣ x ) ,计算公式:
p c = e a c Z ( a ) = e a c ∑ c ′ = 1 C e a c ′ p_c=\frac{e^{a_c}}{Z(\boldsymbol{a})}=\frac{e^{a_c}}{\sum_{c'=1}^C e^{a_{c'}}} p c = Z ( a ) e a c = ∑ c ′ = 1 C e a c ′ e a c 其中 a = f ( x ; θ ) \boldsymbol{a}=f(\boldsymbol{x};\boldsymbol{\theta}) a = f ( x ; θ ) 是 logits.
我们在计算 Z ( a ) Z(\boldsymbol{a}) Z ( a ) 的时候有可能遭遇数值溢出问题。例如,假设我们有三个类别, logits a = ( 0 , 1 , 0 ) \boldsymbol{a}=(0,1,0) a = ( 0 , 1 , 0 ) , 则 Z = e 0 + e 1 + e 0 = 4.71 Z=e^0+e^1+e^0=4.71 Z = e 0 + e 1 + e 0 = 4.71 . 但假如 a = ( 1000 , 1001 , 1000 ) \boldsymbol{a}=(1000,1001,1000) a = ( 1000 , 1001 , 1000 ) , 我们会发现 Z = ∞ Z=\infty Z = ∞ , 因为超过了电脑的存储范围,同样当 a = ( − 1000 , − 999 , − 1000 ) \boldsymbol{a}=(-1000,-999,-1000) a = ( − 1000 , − 999 , − 1000 ) 时, Z = 0 Z=0 Z = 0 . 为了避免该问题,我们可以使用如下等价公式:
log ∑ c = 1 C e a c = m + log ∑ c = 1 C exp ( a c − m ) \log\sum_{c=1}^Ce^{a_c}=m+\log\sum_{c=1}^C\exp(a_c-m) log c = 1 ∑ C e a c = m + log c = 1 ∑ C exp ( a c − m ) 此式对任意 m m m 均成立,通常取 m = m a x c a c m=max_ca_c m = ma x c a c 来确保最大值不会上溢,这样即使发生了下溢,结果仍然是合理的。这就是log-sum-exp trick . 定义lse function :
l s e ( a ) ≜ log ∑ c = 1 C exp ( a c ) \mathrm{lse}(\boldsymbol{a})\triangleq\log\sum_{c=1}^C\exp(a_c) lse ( a ) ≜ log c = 1 ∑ C exp ( a c ) 我们使用 lse 函数表示从 logits 计算得到的概率:
p ( y = c ∣ x ) = exp ( a c − l s e ( a ) ) p(y=c|\boldsymbol{x})=\exp(a_c-\mathrm{lse}(\boldsymbol{a})) p ( y = c ∣ x ) = exp ( a c − lse ( a )) 然后我们可以将这个概率传到交叉熵计算公式中去,见第 5 章。
但是,实际应用中为了节省计算资源和提升数值稳定性,通常会修改交叉熵使其直接用 logits a \boldsymbol{a} a 作为输入,而不是概率向量 p \boldsymbol{p} p . 考虑一个二分类例子,一个样本的 CE loss 是:
L = − [ I ( y = 0 ) log p 0 + I ( y = 1 ) log p 1 ] \mathcal{L}=-[\mathbb{I}(y=0)\log{p_0}+\mathbb{I}(y=1)\log{p_1}] L = − [ I ( y = 0 ) log p 0 + I ( y = 1 ) log p 1 ] 其中 p 0 p_0 p 0 和 p 1 p_1 p 1 均可以用 a a a 直接表示:
log p 1 = log ( 1 1 + exp ( − a ) ) = log ( 1 ) − log ( 1 + exp ( − a ) ) = − l s e ( [ 0 , − a ] ) log p 0 = − l s e ( [ 0 , + a ] ) \begin{aligned} \log p_1 &= \log(\frac{1}{1+\exp(-a)})\\ &=\log(1)-\log(1+\exp(-a))\\ &=-\mathrm{lse}([0,-a])\\ \\ \log p_0 &= -\mathrm{lse}([0,+a]) \end{aligned} log p 1 log p 0 = log ( 1 + exp ( − a ) 1 ) = log ( 1 ) − log ( 1 + exp ( − a )) = − lse ([ 0 , − a ]) = − lse ([ 0 , + a ]) 2.6 Univariate Gaussian (normal) distribution# 2.6.1 Cumulative distribution function (cdf)# Φ ( y ; μ , σ 2 ) ≜ ∫ − ∞ y N ( z ∣ μ , σ 2 ) d z w h e r e z = y − μ σ \Phi(y;\mu,\sigma^2)\triangleq\int_{-\infty}^y\mathcal{N}(z|\mu,\sigma^2)dz\\ \mathrm{where}\quad z=\frac{y-\mu}{\sigma} Φ ( y ; μ , σ 2 ) ≜ ∫ − ∞ y N ( z ∣ μ , σ 2 ) d z where z = σ y − μ 正态分布的 cdf 还可以用error function 来表示:
Φ ( y ; μ , σ 2 ) = 1 2 [ 1 + e r f ( z 2 ) ] w h e r e e r f ( u ) ≜ 2 π ∫ 0 μ e − t 2 d t \Phi(y;\mu,\sigma^2)= \frac{1}{2}[1+\mathrm{erf}(\frac{z}{\sqrt{2}})]\\ where\quad \mathrm{erf}(u)\triangleq \frac{2}{\sqrt{\pi}}\int_0^\mu e^{-t^2}dt Φ ( y ; μ , σ 2 ) = 2 1 [ 1 + erf ( 2 z )] w h ere erf ( u ) ≜ π 2 ∫ 0 μ e − t 2 d t 2.6.2 Probability density function (pdf)# N ( y ∣ μ , σ 2 ) ≜ 1 2 π σ 2 e − 1 2 σ 2 ( y − μ ) 2 \mathcal{N}(y|\mu,\sigma^2)\triangleq \frac{1}{\sqrt{2\pi\sigma^2}}e^{-\frac{1}{2\sigma^2}(y-\mu)^2} N ( y ∣ μ , σ 2 ) ≜ 2 π σ 2 1 e − 2 σ 2 1 ( y − μ ) 2 利用 pdf 我们可以计算出正态分布的均值,方差和标准差:
E [ Y ] ≜ ∫ Y y p ( y ) d y V [ Y ] ≜ E [ ( Y − μ ) 2 ] = E [ Y 2 ] − μ 2 E [ Y 2 ] = σ 2 + μ 2 s t d [ Y ] ≜ V [ Y ] = σ \mathbb{E}[Y]\triangleq\int_\mathcal{Y}y\ p(y)dy\\ \mathbb{V}[Y]\triangleq\mathbb{E}[(Y-\mu)^2]=\mathbb{E}[Y^2]-\mu^2\\ \mathbb{E}[Y^2]=\sigma^2+\mu^2\\ \mathrm{std}[Y]\triangleq\sqrt{\mathbb{V}[Y]}=\sigma E [ Y ] ≜ ∫ Y y p ( y ) d y V [ Y ] ≜ E [( Y − μ ) 2 ] = E [ Y 2 ] − μ 2 E [ Y 2 ] = σ 2 + μ 2 std [ Y ] ≜ V [ Y ] = σ 2.6.3 Regression# 到目前为止我们讨论的都是非条件的高斯分布,有时让高斯分布的参数变成关于输入变量的函数是很有用的,例如,我们可以创建如下形式的条件概率密度模型:
p ( y ∣ x ; θ ) = N ( y ∣ f μ ( x ; θ ) , f σ ( x ; θ ) 2 ) p(y|\boldsymbol{x};\boldsymbol{\theta})=\mathcal{N}(y|f_\mu(\boldsymbol{x};\boldsymbol{\theta}),f_\sigma(\boldsymbol{x};\boldsymbol{\theta})^2) p ( y ∣ x ; θ ) = N ( y ∣ f μ ( x ; θ ) , f σ ( x ; θ ) 2 ) 其中 f μ ( x ; θ ) ∈ R f_\mu(\boldsymbol{x};\boldsymbol{\theta})\in \mathbb R f μ ( x ; θ ) ∈ R 预测均值, f σ ( x ; θ ) 2 ∈ R + f_\sigma(\boldsymbol{x};\boldsymbol{\theta})^2\in\mathbb R_+ f σ ( x ; θ ) 2 ∈ R + 预测方差。
通常我们假设方差固定,独立于输入,这被称作 homoscedastic regression , 另外我们通常假设均值是输入的线性函数,此时这个模型就是线性回归 。
p ( y ∣ x ; θ ) = N ( y ∣ w T x + b , σ 2 ) w h e r e θ = ( w , b , σ 2 ) p(y|\boldsymbol{x};\boldsymbol{\theta})=\mathcal{N}(y|\boldsymbol{w}^\mathsf{T}\boldsymbol{x}+b,\sigma^2)\\ \mathrm{where}\quad \boldsymbol\theta=(\boldsymbol{w},b,\sigma^2) p ( y ∣ x ; θ ) = N ( y ∣ w T x + b , σ 2 ) where θ = ( w , b , σ 2 ) 但是我们也可以令方差依赖于输入,这被称作 heteraskedastic regression :
p ( y ∣ x ; θ ) = N ( y ∣ w T x + b , σ + ( w σ T x ) ) w h e r e θ = ( w μ , w σ ) σ + ( a ) = log ( 1 + e a ) p(y|\boldsymbol{x};\boldsymbol{\theta})=\mathcal{N}(y|\boldsymbol{w}^\mathsf{T}\boldsymbol{x}+b,\sigma_+(\boldsymbol{w}_\sigma^\mathsf{T}\boldsymbol{x}))\\ \begin{aligned} \mathrm{where}\quad \boldsymbol\theta&=(\boldsymbol{w}_\mu,\boldsymbol{w}_\sigma)\\ \sigma_+(a)&=\log(1+e^a) \end{aligned} p ( y ∣ x ; θ ) = N ( y ∣ w T x + b , σ + ( w σ T x )) where θ σ + ( a ) = ( w μ , w σ ) = log ( 1 + e a ) σ + ( a ) \sigma_+(a) σ + ( a ) 是 softplus function,将 R \mathbb R R 映射到 R + \mathbb R_+ R + , 来确保标准差非负。
上图画出了 95%的置信区间,[ μ ( x ) − 2 σ ( x ) , μ ( x ) + 2 σ ( x ) ] [\mu(x)-2\sigma(x),\mu(x)+2\sigma(x)] [ μ ( x ) − 2 σ ( x ) , μ ( x ) + 2 σ ( x )] . 这是预测结果 y y y 关于 x \boldsymbol{x} x 的不确定性,捕捉到了蓝色点中的 variability. 与之相反的是,underlying function (noise-free) 的不确定性是 V [ f μ ( x ; θ ) ] \sqrt{\mathbb{V}[f_\mu(\boldsymbol{x};\boldsymbol{\theta})]} V [ f μ ( x ; θ )] , 其中不包含 σ \sigma σ 项,是关于参数 θ \boldsymbol{\theta} θ 的不确定性,而不是输出 y y y . 第11章详细讨论如何建模参数不确定性。
2.6.4 Why is Gaussian distribution so widely used?# 正态分布的两个参数很容易解释,也体现出了分布的两个基本性质:均值和方差; 中心极限定理告诉我们独立随机变量的和约为一个正态分布,所以它很适合建模残差或”噪音”; 正态分布做出的假设最少 (熵最大),仅需要限制均值和方差,所以很多情况下是一个好的默认选择。具体见 Section 3.4.4; 它的数学形式简单,方法易于实现,但是通常非常有效,具体见 Section 3.2 从历史的角度来说,“高斯分布”这个名字具有一定误导性,因为高斯不是这个分布的发现者,也不是首先研究他的主要性质的人,但是高斯在 1800s 将这个分布成功推广了,所以”高斯分布”这个术语得到了广泛应用。
“normal distribution” 这个名字似乎是在20世纪90年代线性回归的正态方程中出现的。但是我们希望避免使用 “normal” 这个词,因为它似乎在暗示其它分布都是 “abnormal”,但实际上高斯分布才是不正常的,因为它具有很多一般分布不具备的特殊性质。
2.6.5 Dirac delta function as a limiting case# 当高斯分布的方差变为0,分布趋向于一个无限窄但无穷高的脉冲:
lim σ → 0 N ( y ∣ μ , σ 2 ) → δ ( y − μ ) \lim_{\sigma\rightarrow 0}\mathcal{N}(y|\mu,\sigma^2)\rightarrow\delta(y-\mu) σ → 0 lim N ( y ∣ μ , σ 2 ) → δ ( y − μ ) δ \delta δ 是狄拉克 delta 函数 ,定义如下:
δ ( x ) = { + ∞ i f x = 0 0 i f x ≠ 0 w h e r e ∫ − ∞ + ∞ δ ( x ) d x = 1 \delta(x)=\begin{cases} +\infty & \mathrm{if}\ x=0\\ 0 & \mathrm{if}\ x\neq0 \end{cases}\\ \mathrm{where}\quad \int_{-\infty}^{+\infty}\delta(x)dx=1 δ ( x ) = { + ∞ 0 if x = 0 if x = 0 where ∫ − ∞ + ∞ δ ( x ) d x = 1 一个小的变形:
δ y ( x ) = { + ∞ i f x = y 0 i f x ≠ y \delta_y(x)=\begin{cases} +\infty & \mathrm{if}\ x=y\\ 0 & \mathrm{if}\ x\neq y \end{cases}\\ δ y ( x ) = { + ∞ 0 if x = y if x = y 注意: δ y ( x ) = δ ( x − y ) \delta_y(x)=\delta(x-y) δ y ( x ) = δ ( x − y )
delta function 满足如下挑选性质 ,后面会用到:
∫ − ∞ ∞ f ( y ) δ ( x − y ) d y = f ( x ) \int_{-\infty}^{\infty}f(y)\delta(x-y)dy=f(x) ∫ − ∞ ∞ f ( y ) δ ( x − y ) d y = f ( x ) 2.7 Some other common univariate distributions# 2.7.1 Student t distribution# 高斯分布对于 outliers 非常敏感。另一个比高斯分布更 robust 的选择是Student t-distribution . 它的 pdf:
T ( y ∣ μ , σ 2 , ν ) ∝ [ 1 + 1 ν ( y − μ σ ) 2 ] − ( ν + 1 2 ) \mathcal{T}(y|\mu,\sigma^2,\mathcal{\nu})\varpropto[1+\frac{1}{\nu}(\frac{y-\mu}{\sigma})^2]^{-(\frac{\nu+1}{2})} T ( y ∣ μ , σ 2 , ν ) ∝ [ 1 + ν 1 ( σ y − μ ) 2 ] − ( 2 ν + 1 ) 其中 μ \mu μ 是均值, σ > 0 \sigma>0 σ > 0 是尺度参数, ν > 0 \nu>0 ν > 0 是degrees of freedom 自由度,但是还有个更好的术语:“degrees of normality”,因为 ν \nu ν 的值变大会使分布趋向于正态分布。
我们可以观察到 t 分布的概率密度是以多项式的形式衰减的,而不是指数形式,这意味着相比于高斯分布,t 分布在尾部的概率质量更多,所以我们说 t 分布是长尾分布,因此 t 分布对于异常值更鲁棒。具体如下图所示:左图是没有 outlier 的情况,右图是 有 outlier 的情况,可以看出高斯分布受到的影响比 t 分布和 Laplace 分布大得多。后面我们会讨论怎么用 t 分布做更鲁棒的线性回归。
注意 t 分布的一些性质:
m e a n = μ , m o d e = μ , v a r = ν σ 2 ( ν − 2 ) \mathrm{mean}=\mu,\ \ \mathrm{mode}=\mu,\ \ \mathrm{var}=\frac{\nu\sigma^2}{(\nu-2)} mean = μ , mode = μ , var = ( ν − 2 ) ν σ 2 仅当 ν > 1 \nu>1 ν > 1 时均值有定义,仅当 ν > 2 \nu>2 ν > 2 时方差有定义。当 ν ≫ 5 \nu\gg5 ν ≫ 5 ,t 分布迅速逼近一个高斯分布并且失去了鲁棒性,通常令 ν = 4 \nu=4 ν = 4 ,在许多问题上都有很好的表现。
2.7.2 Cauchy distribution# 当 ν = 1 \nu=1 ν = 1 ,t 分布就变成了Cauchy or Lorentz 分布,它的 pdf 定义为:
C ( x ∣ μ , γ ) ≜ 1 γ π [ 1 + ( x − μ γ ) 2 ] − 1 \mathcal{C}(x|\mu,\gamma)\triangleq\frac{1}{\gamma\pi}[1+(\frac{x-\mu}{\gamma})^2]^{-1} C ( x ∣ μ , γ ) ≜ γπ 1 [ 1 + ( γ x − μ ) 2 ] − 1 这个分布的尾部非常重,95% 的值位于 [ − 12.7 , 12.7 ] [-12.7,12.7] [ − 12.7 , 12.7 ] . 正是由于尾部太重导致均值的积分无法收敛。
半柯西分布 可以看作 μ = 0 \mu=0 μ = 0 的柯西分布的自身折叠版本,概率全部分布在正实数域上。
C + ( x ∣ γ ) ≜ 2 γ π [ 1 + ( x γ ) 2 ] − 1 \mathcal{C}_+(x|\gamma)\triangleq\frac{2}{\gamma\pi}[1+(\frac{x}{\gamma})^2]^{-1} C + ( x ∣ γ ) ≜ γπ 2 [ 1 + ( γ x ) 2 ] − 1 这个分布在贝叶斯建模中很有用,我们希望使用一个长尾的正实数域上的分布,但同时在原点的密度是有限的。
2.7.3 Laplace distribution# Laplace 分布是另一个长尾分布,又叫双边指数分布 。它的 pdf 定义如下:
L a p ( y ∣ μ , b ) ≜ 1 2 b exp ( − ∣ y − μ ∣ b ) \mathrm{Lap}(y|\mu,b)\triangleq\frac{1}{2b}\exp(-\frac{|y-\mu|}{b}) Lap ( y ∣ μ , b ) ≜ 2 b 1 exp ( − b ∣ y − μ ∣ ) μ \mu μ 是位置参数,b > 0 b>0 b > 0 是尺度参数。这个分布的性质如下:
m e a n = μ , m o d e = μ , v a r = 2 b 2 \mathrm{mean}=\mu,\ \ \mathrm{mode}=\mu,\ \ \mathrm{var}=2b^2 mean = μ , mode = μ , var = 2 b 2 第11章我们会讨论怎么用 Laplace 分布做更鲁棒的线性回归以及稀疏线性回归。
2.7.4 Beta distribution# beta distribution 定义于区间 [ 0 , 1 ] [0,1] [ 0 , 1 ] ,定义如下:
B e t a ( x ∣ a , b ) = 1 B ( a , b ) x a − 1 ( 1 − x ) b − 1 w h e r e B ( a , b ) ≜ Γ ( a ) Γ ( b ) Γ ( a + b ) w h e r e Γ ( a ) ≜ ∫ 0 ∞ x a − 1 e − x d x \mathrm{Beta}(x|a,b)=\frac{1}{B(a,b)}x^{a-1}(1-x)^{b-1}\\ \mathrm{where}\quad B(a,b)\triangleq\frac{\Gamma(a)\Gamma(b)}{\Gamma(a+b)}\\ \mathrm{where}\quad \Gamma(a)\triangleq\int_{0}^{\infty}x^{a-1}e^{-x}dx Beta ( x ∣ a , b ) = B ( a , b ) 1 x a − 1 ( 1 − x ) b − 1 where B ( a , b ) ≜ Γ ( a + b ) Γ ( a ) Γ ( b ) where Γ ( a ) ≜ ∫ 0 ∞ x a − 1 e − x d x 关于参数 a , b a,b a , b 的要求:
a , b > 0 a,b>0 a , b > 0 , 确保 B ( a , b ) B(a,b) B ( a , b ) 存在和分布可积如果 a = b = 1 a=b=1 a = b = 1 ,我们得到了均匀分布 如果 a , b a,b a , b 均小于 1,我们得到一个双峰分布 如果 a , b a,b a , b 均大于 1,我们得到一个单峰分布 beta 分布的性质:
m e a n = a a + b , m o d e = a − 1 a + b − 2 , v a r = a b ( a + b ) 2 ( a + b + 1 ) \mathrm{mean}=\frac{a}{a+b},\ \ \mathrm{mode}=\frac{a-1}{a+b-2},\ \ \mathrm{var}=\frac{ab}{(a+b)^2(a+b+1)} mean = a + b a , mode = a + b − 2 a − 1 , var = ( a + b ) 2 ( a + b + 1 ) ab 2.7.5 Gamma distribution# Gamma 分布是一个定义于正实数域上的灵活分布。它拥有两个参数:形状 a > 0 a>0 a > 0 ,速率 b > 0 b>0 b > 0 :
G a ( x ∣ s h a p e = a , r a t e = b ) ≜ b a Γ ( a ) x a − 1 e − x b \mathrm{Ga}(x|\mathrm{shape}=a,\mathrm{rate}=b)\triangleq\frac{b^a}{\Gamma(a)}x^{a-1}e^{-xb} Ga ( x ∣ shape = a , rate = b ) ≜ Γ ( a ) b a x a − 1 e − x b 有时我们用形状 a a a 和 scale s = 1 / b s=1/b s = 1/ b 来表征分布:
G a ( x ∣ s h a p e = a , r a t e = b ) ≜ 1 s a Γ ( a ) x a − 1 e − x / s \mathrm{Ga}(x|\mathrm{shape}=a,\mathrm{rate}=b)\triangleq\frac{1}{s^a\Gamma(a)}x^{a-1}e^{-x/s} Ga ( x ∣ shape = a , rate = b ) ≜ s a Γ ( a ) 1 x a − 1 e − x / s Gamma 分布的性质:
m e a n = a b , m o d e = a − 1 b , v a r = a b 2 \mathrm{mean}=\frac{a}{b},\ \ \mathrm{mode}=\frac{a-1}{b},\ \ \mathrm{var}=\frac{a}{b^2} mean = b a , mode = b a − 1 , var = b 2 a Gamma 分布的特殊情况:
指数分布:E x p o n ( x ∣ λ ) ≜ G a ( x ∣ s h a p e = 1 , r a t e = λ ) \mathrm{Expon}(x|\lambda)\triangleq\mathrm{Ga}(x|\mathrm{shape}=1,\mathrm{rate}=\lambda) Expon ( x ∣ λ ) ≜ Ga ( x ∣ shape = 1 , rate = λ ) 此分布描述了 Poisson 过程中事件发生之间的时间间隔,Poisson 过程即事件以一个固定的平均速率 λ \lambda λ 连续独立发生的过程; 卡方分布:X ν 2 ( x ) ≜ G a ( x ∣ s h a p e = ν 2 , r a t e = 1 2 ) \mathcal{X}^2_\nu(x)\triangleq\mathrm{Ga}(x|\mathrm{shape}=\frac{\nu}{2},\mathrm{rate}=\frac{1}{2}) X ν 2 ( x ) ≜ Ga ( x ∣ shape = 2 ν , rate = 2 1 ) ν \nu ν 是自由度,此分布是高斯分布变量的平方和。如果 Z i ∼ N ( 0 , 1 ) Z_i\sim\mathcal{N}(0,1) Z i ∼ N ( 0 , 1 ) 且 S = ∑ i = 1 ν Z i 2 S=\sum_{i=1}^{\nu}Z_i^2 S = ∑ i = 1 ν Z i 2 ,则 S ∼ X ν 2 S\sim \mathcal{X}_\nu^2 S ∼ X ν 2 Inverse Gamma 分布:I G ( x ∣ s h a p e = a , s c a l e = b ) ≜ b a Γ ( a ) x − ( a + 1 ) e − b / x \mathrm{IG}(x|\mathrm{shape}=a,\mathrm{scale}=b)\triangleq\frac{b^a}{\Gamma(a)}x^{-(a+1)}e^{-b/x} IG ( x ∣ shape = a , scale = b ) ≜ Γ ( a ) b a x − ( a + 1 ) e − b / x m e a n = b a − 1 , m o d e = b a + 1 , v a r = b 2 ( a − 1 ) 2 ( a − 2 ) \mathrm{mean}=\frac{b}{a-1},\ \ \mathrm{mode}=\frac{b}{a+1},\ \ \mathrm{var}=\frac{b^2}{(a-1)^2(a-2)} mean = a − 1 b , mode = a + 1 b , var = ( a − 1 ) 2 ( a − 2 ) b 2 仅当 a > 1 a>1 a > 1 时均值存在,仅当 a > 2 a>2 a > 2 时方差存在 如果 X ∼ G a ( s h a p e = a , r a t e = b ) X\sim\mathrm{Ga}(\mathrm{shape}=a,\mathrm{rate}=b) X ∼ Ga ( shape = a , rate = b ) ,那么 1 / X ∼ I G ( s h a p e = a , s c a l e = b ) 1/X\sim\mathrm{IG}(\mathrm{shape}=a,\mathrm{scale}=b) 1/ X ∼ IG ( shape = a , scale = b ) 2.7.6 Empirical distribution# 假设我们有 N N N 个样本 D = { x ( 1 ) , ⋯ , x ( N ) } \mathcal{D}=\{x^{(1)},\cdots,x^{(N)}\} D = { x ( 1 ) , ⋯ , x ( N ) } ,采样自分布 p ( X ) , X ∈ R p(X),\ X\in\mathbb R p ( X ) , X ∈ R . 我们可以用一系列 delta 函数来逼近原来的 pdf:
p ^ N ( x ) = 1 N ∑ n = 1 N δ x ( i ) ( x ) \hat{p}_N(x)=\frac{1}{N}\sum_{n=1}^{N}\delta_{x^{(i)}}(x) p ^ N ( x ) = N 1 n = 1 ∑ N δ x ( i ) ( x ) 这称作数据集 D \mathcal{D} D 的经验分布。对应的 cdf:
P ^ N ( x ) = 1 N ∑ n = 1 N I ( x ( i ) ≤ x ) = 1 N ∑ n = 1 N u x ( i ) ( x ) w h e r e u y ( x ) = { 1 i f x ≥ y 0 i f x < y \hat{P}_N(x)=\frac{1}{N}\sum_{n=1}^{N}\mathbb{I}(x^{(i)}\leq x)=\frac{1}{N}\sum_{n=1}^{N}u_{x^{(i)}}(x)\\ \mathrm{where}\quad u_y(x)=\begin{cases} 1 & \mathrm{if}\ x\geq y\\ 0 & \mathrm{if}\ x< y \end{cases} P ^ N ( x ) = N 1 n = 1 ∑ N I ( x ( i ) ≤ x ) = N 1 n = 1 ∑ N u x ( i ) ( x ) where u y ( x ) = { 1 0 if x ≥ y if x < y
假设 x \boldsymbol{x} x 是随机变量,y = f ( x ) \boldsymbol{y}=f(\boldsymbol{x}) y = f ( x ) 是确定变换,本节我们讨论如何计算 p ( y ) p(\boldsymbol{y}) p ( y )
2.8.1 Discrete case# 如果 X X X 是离散 rv,我们可以推导出 Y Y Y 的 pmf,只需要简单加和所有使 f ( x ) = y f(x)=y f ( x ) = y 的 x x x 的概率质量:
p y ( y ) = ∑ x : f ( x ) = y p x ( x ) p_y(y)=\sum_{x:f(x)=y}p_x(x) p y ( y ) = x : f ( x ) = y ∑ p x ( x ) 2.8.2 Continuous case# 我们使用 cdf:
P y ( y ) ≜ P r ( Y ≤ y ) = P r ( f ( X ) ≤ y ) = P r ( X ∈ { x ∣ f ( x ) ≤ y } ) P_y(y)\triangleq \mathrm{Pr}(Y\leq y)=\mathrm{Pr}(f(X)\leq y)=\mathrm{Pr}(X\in \{x|f(x)\leq y\}) P y ( y ) ≜ Pr ( Y ≤ y ) = Pr ( f ( X ) ≤ y ) = Pr ( X ∈ { x ∣ f ( x ) ≤ y }) 如果 f f f 是可逆的,我们可以对 cdf 求导 来得到 y y y 的pdf. 如果 f f f 不是可逆的,我们可以使用数值积分或者蒙特卡罗近似 本部分我们考虑单调并因此可逆的的函数(注意一个函数当且仅当它是一个bijector 时它可逆。在这个假设下我们发现 y y y 的 pdf 有简单的公式。这个结论也可以推广到可逆但不单调的函数,但这里我们忽略这个情况。
2.8.3.1 Change of variables: scalar case# p y ( y ) = p x ( g ( y ) ) ∣ d d y g ( y ) ∣ p_y(y)=p_x(g(y))|\frac{d}{dy}g(y)| p y ( y ) = p x ( g ( y )) ∣ d y d g ( y ) ∣ 2.8.3.2 Change of variables: multivariate case# p y ( y ) = p x ( g ( y ) ) ∣ det [ J g ( y ) ] ∣ w h e r e J g = d g ( y ) d y T p_y(\boldsymbol{y})=p_x(\boldsymbol{g}(\boldsymbol{y}))|\det[\mathbf{J}_g(\boldsymbol{y})]|\\ \mathrm{where}\quad \mathbf{J}_g=\frac{d\boldsymbol{g}(\boldsymbol{y})}{d\boldsymbol{y}^\mathsf{T}} p y ( y ) = p x ( g ( y )) ∣ det [ J g ( y )] ∣ where J g = d y T d g ( y ) 假设 f f f 为一个仿射变换,则 y = A x + b \boldsymbol{y=Ax+b} y = Ax + b , 此时我们可以推导出 y \boldsymbol{y} y 的均值和方差:
E [ y ] = E [ A x + b ] = A μ + b \mathbb{E}[y]=\mathbb{E}[\boldsymbol{Ax+b}]=\boldsymbol{A\mu+b} E [ y ] = E [ Ax + b ] = Aμ + b