本文首先引入多元概率分布,然后重点介绍了与极大似然估计(MLE)和贝叶斯推断(Bayesian Inference)相关的内容。
1 多元概率分布
多元概率分布就是考察 一组随机变量同时取值 的情况。下面谈一谈典型的多元概率分布:多项分布和多元正态分布。
1.1 多项分布
多项分布就是二项分布推广到多元的情形。设一个袋子中很多球,一共有 K 种颜色。从袋子中有放回地取出 n 个球(保证每次取样服从独立同分布),令 X=(X1,...,XK),其中 Xk 表示颜色为 k 的球的个数,则 X 服从多项分布:
P(X=(x1,…,xk)∣μ1,…,μk)=n!x1!…xK!μx11…μxKK
其中 μk 为每次抽取的球的颜色为 k 的概率,显然 ∑Kk=1xk=n。n!x1!...xK! 是因为要从 n 个球的排列数中去除同一个颜色的球的重复的排列数。
Gamma 函数被定义为 Γ(z)=∫∞0tz−1exp(t)dt,时阶乘扩展到实数域的版本(可通过 Γ(t+1)=(z+1)Γ(t) 验证)。将 n!x1!...xK! 替换为 Gamma 函数则有
P(X=(x1,…,xk)∣μ1,…,μk)=Γ(∑Kk=1(xk+1))∑Kk=1Γ(xK+1)μx11…μxKK
1.2 多元正态分布
多元正态分布就是正态分布推广到多元的情形:
P(X=(x1,…,xk)∣μ,Σ)=1(2π)K2|Σ|12exp(−12(x−μ)TΣ−1(x−μ))
其中 μ=(μ1,...,μK) 为各个随机变量的均值,Σ 为协方差矩阵。Σ 为作为对称阵是一定可以正交对角化的,故 Σ−1 必然存在。若 Σ=σ2I(各维随机变量相互独立且方差相同),则是各向同性多元正态分布。
2 极大似然估计与贝叶斯推断
2.1 贝叶斯公式
贝叶斯公式的形式如下:
P(A∣B)=P(A)P(B∣A)P(B)
从极大似然估计(MLE)的角度来理解贝叶斯公式:P(A) 是原本 A 发生的概率(先验),P(B|A)P(B) 是新信息带来的调整(其中 P(B|A) 是似然;P(B) 是标准化项,让 P(A│B) 仍在 0 到 1 之间),P(A│B) 是调整后 A 发生的概率(后验)。
在文章 概率论基本概念 · 概率论、数理统计与信息论 01 章节 1.3 的最后,我给出了全概率公式:
Pr[A]=∑nPr[A∧Bn]=∑nPr[A∣Bn]Pr[Bn]
该公式还可以表达为
Pr[A]=E[Pr[A∣N]]
此处 N 是任意随机变量,该式在连续情况下也成立。同样地,该式可以理解为 A 的先验概率等于 A 的后验概率的事前期望值。
2.2 极大似然估计
将某一事件发生的概率称为这个事件的参数,通过证据(已经发生了的观测数据),对该参数进行推断的过程就是似然,通过 “最大化证据发生的概率” 找到最有可能的参数,就是最大似然估计。为什么 “最大化证据发生的概率” 是合理的?这是因为我们朴素地认为:一个合理的参数应该尽可能地让真实发生的事件(观测数据)的概率最大。
参数本身也可以看成是一个随机变量,对参数的估计叫做 参数学习。许多机器学习算法都隶属于参数学习。在没有证据之前,假设参数服从某一个分布,我们将这个分布称为该参数的先验分布。经过观测数据的修正得到的新的分布,称之为该参数的后验分布。贝叶斯推断就是 “先验分布 + 观测数据 → 后验分布” 这个过程。
人们为了简化贝叶斯推断过程,喜欢让参数的先验分布和后验分布是同一个分布(这个分布当然是手工构造出来的),该分布的系数经过观测数据的洗礼得到了修正。满足这样条件的先验分布和后验分布被称为共轭分布。例如,第 7 条提到的多项分布,其参数的共轭分布是 Dirichlet 分布:
P(X=(μ1,...,μk)∣α)=Γ(∑Kk=1αk)∑Kk=1Γ(αk)μα11...μαKK
可以发现,参数的共轭分布的参数 α 就是原分布的随机变量(向量)。
观测数据越多(证据越多),参数的分布就越集中,修正的效果就越好。这个结论可在 Höffding’s inequality 上观察到:
∀ϵ≥0,P(|ˆθ−θ|≥ϵ)≤2exp(−2Nϵ2)
该不等式可由切诺夫界得到。它常用于执行 Probably Approximate Correct(即 PAC Learning,用于计算满足给定条件的最少样本数)。
以抛硬币为例,不妨将正面落下的概率为 θ,我们很自然地会认为 θ=0.5,这就是先验。先验通常是人们脑海中对一个事件发生的概率的固有印象。有了这个先验,我们不断地抛硬币获取观测数据,根据这些观测数据来修正 θ。如果硬币没有造假,那么在观测数据量极为庞大的情况下,后验无限逼近 0.5。如果硬币造假了,正面落下的次数远多于反面,那么后验就会被修正到一个远小于 0.5 的位置。以上这个例子中,参数的分布是连续分布(Beta 分布)。在观测数据足够多的情况下,再差的先验都可以被很好地修正,先验的存在感微乎其微。传统的统计学习算法强烈依赖于假设空间(先验)的选取,正是因为观测样本无法给出足够合理的修正,因而它们又被称为 “小样本学习”。
2.3 贝叶斯推断
贝叶斯推断包含三个步骤:
- 假设先验的分布;
- 执行极大似然估计;
- 执行最大后验近似。
接下来以二项分布为例,阐述贝叶斯推断的执行过程。
以抛硬币为例,设参数为 θ 表示正面落下的概率(硬币正面和反面分别用 Head 和 Tail 标记)。
先验:
假设 θ 服从如下先验分布(我们称之为 Beta 分布):
P(θ)=θβH−1(1−θ)βT−1B(βH,βT)∼Beta(θ|βH,βT)=Γ(βH+βT)Γ(βH)Γ(βT)θβH−1(1−θ)βT−1
其中 βH 和 βT 是先验分布的参数。
似然:
抛硬币数次,得到了一组观测数据 D(e.g. {H,T,H,H,T,...}),其中 Head 个数为 αH,Tail 个数为 αT。则可以得到似然
P(D∣θ)=θαH(1−θ)αT
之所以是累乘是因为我们假设每次采样都服从独立同分布。将似然视为关于参数 θ 的函数,通过最大化似然,可以得到最优参数 ˆθ:
ˆθ=αHαH+αT
后验:
根据贝叶斯公式,后验 P(θ∣D) 满足
P(θ∣D)∝P(θ)P(D∣θ)∼Beta(θ∣βH+αH,βT+αT)
所以后验仍然服从 Beta 分布,只是 Beta 分布参数发生了变化。因此先验分布和后验分布共轭。
此时对真实参数 θ∗ 的计算应该是这样的:
θ∗=E[θ]=∫10P(θ∣D)θdθ
这里参数 θ 的每个取值发生的概率选取的是后验概率。如果 P(θ∣D) 的分布已知(本案例中是已知的,就是 Beta 分布),那么硬着头皮计算这个期望就完事了。但是如果 P(θ∣D) 的分布未知,我们可以用 最大化后验 的方式去估计后验,即
θ∗≈argmaxθP(θ∣D)
这种估计方法就是最大后验近似(Maximum A Posteriori approximation,MAP)。对于本问题,可以验证,MAP 的结果是
argmaxθP(θ∣D)=αH+βH−1αT+βT+αH+βH−2
当观测数量 N=αH+αT→∞ 时,argmaxθP(θ∣D)→αHαH+αT=ˆθ=argmaxθP(D∣θ)。这就是最大似然。这就验证了上文陈述过的结论:当观测样本量足够庞大的时候,最大似然估计≈最大后验近似,先验的作用微乎其微。
最后
本文省略了一些不太重要的内容,想要获取完整内容,请阅读 需要熟练掌握的算法理论基础 。
转载申请
本作品采用 知识共享署名 4.0 国际许可协议 进行许可,转载时请注明原文链接。您必须给出适当的署名,并标明是否对本文作了修改。