引言

上一节介绍了从权重衰减的角度描述正则化的本质,本节从贝叶斯概率的角度对正则化进行描述。

本节建议与极大似然估计与最大后验概率估计结合阅读。

回顾:极大似然估计与最大后验概率估计

似然与最大似然估计

关于似然,我们并不陌生。似然就是似然函数( Likelihood Function \text{Likelihood Function} Likelihood Function),这个函数描述的是一个概率分布
x ∼ P ( X ; θ ) x \sim \mathcal P(\mathcal X;\theta) xP(X;θ)
其中 θ \theta θ表示这个似然函数的参数。 X \mathcal X X表示样本集合 x x x表示服从分布 P ( X ; θ ) \mathcal P(\mathcal X;\theta) P(X;θ)中的某个样本。我们通常也会将似然函数描述成对数似然函数 ( Log-Likelihod Function ) (\text{Log-Likelihod Function}) (Log-Likelihod Function)
P ( X ; θ ) ⇒ log ⁡ P ( X ; θ ) \mathcal P(\mathcal X;\theta) \Rightarrow \log \mathcal P(\mathcal X;\theta) P(X;θ)logP(X;θ)
假设样本集合 X = { ( x ( i ) , y ( i ) ) } i = 1 N \mathcal X = \{(x^{(i)},y^{(i)})\}_{i=1}^N X={(x(i),y(i))}i=1N,并假设各样本之间满足独立同分布( Independent Identically Distribution,IID \text{Independent Identically Distribution,IID} Independent Identically Distribution,IID):
x ( i ) ∼ i.i.d P ( X ; θ ) i = 1 , 2 , ⋯   , N x^{(i)} \overset{\text{i.i.d}}{\sim} \mathcal P(\mathcal X;\theta) \quad i=1,2,\cdots,N x(i)i.i.dP(X;θ)i=1,2,,N
那么概率分布 P ( X ; θ ) \mathcal P(\mathcal X;\theta) P(X;θ)可看作是样本集合 X \mathcal X X N N N相互独立样本 x ( i ) ( i = 1 , 2 , ⋯   , N ) x^{(i)}(i=1,2,\cdots,N) x(i)(i=1,2,,N)联合概率分布
P ( X ; θ ) = P ( x ( 1 ) , x ( 2 ) , ⋯   , x ( N ) ; θ ) = ∏ i = 1 N P ( x ( i ) ; θ ) \begin{aligned} \mathcal P(\mathcal X;\theta) & = \mathcal P(x^{(1)},x^{(2)},\cdots,x^{(N)};\theta)\\ & = \prod_{i=1}^N \mathcal P(x^{(i)};\theta) \end{aligned} P(X;θ)=P(x(1),x(2),,x(N);θ)=i=1NP(x(i);θ)
而对应的对数似然函数表示如下:

  • 对数似然函数相较于似然函数在极大似然估计中有明显的优点。它将连乘操作 ∏ i = 1 N \prod_{i=1}^N i=1N转化为连加操作 ∑ i = 1 N \sum_{i=1}^N i=1N,节省了大量的计算资源,并且有利于后续的推导过程。
  • 并且 log ⁡ \log log函数自身是单调递增函数,对极大似然估计结果的单调性无影响。
    log ⁡ P ( X ; θ ) = log ⁡ ∏ i = 1 N P ( x ( i ) ; θ ) = ∑ i = 1 N log ⁡ P ( x ( i ) ; θ ) \begin{aligned} \log \mathcal P(\mathcal X;\theta) & = \log \prod_{i=1}^N \mathcal P(x^{(i)};\theta) \\ & = \sum_{i=1}^N \log \mathcal P(x^{(i)};\theta) \end{aligned} logP(X;θ)=logi=1NP(x(i);θ)=i=1NlogP(x(i);θ)

关于极大似然估计,它是一个算法,它的返回结果是某个参数值,这个参数值满足的条件是:使得似然函数/对数似然函数结果达到最大
这里使用对数似然函数为例。
θ ^ = arg ⁡ max ⁡ θ log ⁡ P ( X ; θ ) \hat \theta = \mathop{\arg\max}\limits_{\theta} \log \mathcal P(\mathcal X;\theta) θ^=θargmaxlogP(X;θ)
假设 θ ^ \hat \theta θ^就是基于样本集合 X \mathcal X X极大似然估计的最优参数结果,那么对应的 P ( X ; θ ^ ) \mathcal P(\mathcal X;\hat \theta) P(X;θ^)也是一个确定的概率分布结果,并且它与真实模型 P d a t a ( X ) \mathcal P_{data}(\mathcal X) Pdata(X)是接近的。

极大似然估计与最大后验概率估计

极大似然估计的问题描述

先说结论:极大似然估计不够准确

投掷硬币为例,投掷 10 10 10次硬币,可能会得到如下几种结果:
其他结果我们不例举了。

  • 硬币是正面 1 1 1次,反面 9 9 9 ⇒ θ 1 \Rightarrow \theta_1 θ1
  • 硬币是正面 8 8 8次,反面 2 2 2 ⇒ θ 2 \Rightarrow \theta_2 θ2
  • 硬币是正面 7 7 7次,反面 3 3 3 ⇒ θ 3 \Rightarrow \theta_3 θ3

如果以上述不同的 θ \theta θ值来描述投掷 10 10 10次硬币,其中正面 3 3 3次,反面 7 7 7这个事件的概率时,我们会得到不同的概率结果
需要说明的点,关于似然函数 P ( X ; θ ) \mathcal P(\mathcal X;\theta) P(X;θ) P ( X ∣ θ ) \mathcal P(\mathcal X \mid \theta) P(Xθ)写法都是没有问题的,都有各自的意义。其中 P ( X ; θ ) \mathcal P(\mathcal X;\theta) P(X;θ)可看作参数是 θ \theta θ的概率模型/概率分布; P ( X ∣ θ ) \mathcal P(\mathcal X \mid \theta) P(Xθ)可看作是给定模型参数 θ \theta θ条件下,生成出样本集合 X \mathcal X X概率。
{ P ( X ∣ θ 1 ) = C 10 3 ⋅ ( 1 1 + 9 ) 7 ⋅ ( 9 1 + 9 ) 3 P ( X ∣ θ 2 ) = C 10 3 ⋅ ( 8 2 + 8 ) 7 ⋅ ( 2 2 + 8 ) 3 P ( X ∣ θ 3 ) = C 10 3 ⋅ ( 7 3 + 7 ) 7 ⋅ ( 3 3 + 7 ) 3 \begin{cases} \mathcal P(\mathcal X \mid \theta_1) = \mathcal C_{10}^3 \cdot (\frac{1}{1 + 9})^7 \cdot (\frac{9}{1+ 9})^3 \\ \mathcal P(\mathcal X \mid \theta_2) = \mathcal C_{10}^3 \cdot (\frac{8}{2 + 8})^7 \cdot (\frac{2}{2 + 8})^3 \\ \mathcal P(\mathcal X \mid \theta_3) = \mathcal C_{10}^3 \cdot (\frac{7}{3 + 7})^7 \cdot (\frac{3}{3 + 7})^3 \\ \end{cases} P(Xθ1)=C103(1+91)7(1+99)3P(Xθ2)=C103(2+88)7(2+82)3P(Xθ3)=C103(3+77)7(3+73)3

虽然我们知道,随着我们投掷硬币的次数越多,上述的概率结果(括号内的部分)会越趋于稳定 ⇒ \Rightarrow 向数值 0.5 0.5 0.5收敛。但这个 0.5 0.5 0.5结果我们可能永远也取不到。从而导致 θ \theta θ永远无法得到精确解

但是我们希望能够得到一个精确解来描述模型,因而使用极大似然估计去将这个解 θ \theta θ作为精确解。上述示例中,由于:
P ( X ∣ θ 1 ) < P ( X ∣ θ 2 ) < P ( X ∣ θ 3 ) \mathcal P(\mathcal X \mid \theta_1) < \mathcal P(\mathcal X \mid \theta_2) < \mathcal P(\mathcal X \mid \theta_3) P(Xθ1)<P(Xθ2)<P(Xθ3)
因而上述示例中最优解 P ( X ∣ θ 3 ) \mathcal P(\mathcal X \mid \theta_3) P(Xθ3)对应的参数 θ 3 \theta_3 θ3
那么关于极大似然估计,它有两个不合理的地方:

  • 由于没有办法确定 θ \theta θ,我们可能需要通过大量的独立实验来统计 θ \theta θ可能发生的情况,并统计 θ \theta θ对应情况的概率分布 P ( θ ∣ X ) \mathcal P(\theta \mid \mathcal X) P(θX),并从 P ( θ   ∣ X ) \mathcal P(\theta\ \mid \mathcal X) P(θ X)选择出 θ \theta θ的解。
    需要注意的是,这个情况不一定是离散的,也可能是连续的。

    但实际上,我们没有使用 P ( θ ∣ X ) \mathcal P(\theta \mid \mathcal X) P(θX) θ \theta θ进行描述,而是使用似然函数 P ( X ∣ θ ) \mathcal P(\mathcal X \mid \theta) P(Xθ)替代 P ( θ ∣ X ) \mathcal P(\theta \mid \mathcal X) P(θX)进行描述。可是 P ( X ∣ θ ) ≠ P ( θ ∣ X ) \mathcal P(\mathcal X \mid \mathcal \theta) \neq \mathcal P(\theta \mid \mathcal X) P(Xθ)=P(θX)

  • θ \theta θ自身没有办法求得精确解,但我们希望使用极大似然估计对应的参数结果作为 P ( X ∣ θ ) \mathcal P(\mathcal X\mid \theta) P(Xθ)的最优解。

改进:最大后验概率估计

针对上述的第一个不合理的点,虽然 P ( X ∣ θ ) ≠ P ( θ ∣ X ) \mathcal P(\mathcal X \mid \theta) \neq \mathcal P(\theta \mid \mathcal X) P(Xθ)=P(θX),但是它们之间存在关联关系。使用贝叶斯定理对其进行描述:
P ( θ ∣ X ) = P ( X ∣ θ ) P ( X ) ⋅ P ( θ ) \mathcal P(\theta \mid \mathcal X) = \frac{\mathcal P(\mathcal X \mid \theta)}{\mathcal P(\mathcal X)} \cdot \mathcal P(\theta) P(θX)=P(X)P(Xθ)P(θ)

由于 X \mathcal X X样本集合,是已知量,我们可以将上述公式看作关于 θ \theta θ的一个函数 f X ( θ ) f_{\mathcal X}(\theta) fX(θ)
其中 P ( X ) = ∫ θ P ( X ∣ θ ) ⋅ P ( θ ) d θ \mathcal P(\mathcal X) = \int_{\theta} \mathcal P(\mathcal X \mid \theta) \cdot \mathcal P(\theta) d\theta P(X)=θP(Xθ)P(θ)dθ,它和 θ \theta θ无关,被视作常数。一个常数对于求解最值没有影响。
f X ( θ ) = P ( θ ∣ X ) = P ( X ∣ θ ) P ( X ) ⋅ P ( θ ) ∝ P ( X ∣ θ ) ⋅ P ( θ ) \begin{aligned} f_{\mathcal X}(\theta) & = \mathcal P(\theta \mid \mathcal X) = \frac{\mathcal P(\mathcal X \mid \theta)}{\mathcal P(\mathcal X)} \cdot \mathcal P(\theta) \\ & \propto \mathcal P(\mathcal X \mid \theta) \cdot \mathcal P(\theta) \end{aligned} fX(θ)=P(θX)=P(X)P(Xθ)P(θ)P(Xθ)P(θ)
对应的最大后验估计可表示为:
θ ^ = arg ⁡ max ⁡ θ f X ( θ ) = arg ⁡ max ⁡ θ [ P ( X ∣ θ ) ⋅ P ( θ ) ] \hat \theta = \mathop{\arg\max}\limits_{\theta} f_{\mathcal X}(\theta) = \mathop{\arg\max}\limits_{\theta} \left[\mathcal P(\mathcal X \mid \theta) \cdot \mathcal P(\theta)\right] θ^=θargmaxfX(θ)=θargmax[P(Xθ)P(θ)]
对数似然函数一样,我们也可以给上式添加一个 log ⁡ \log log项:
θ ^ = arg ⁡ max ⁡ θ log ⁡ [ P ( X ∣ θ ) ⋅ P ( θ ) ] = arg ⁡ max ⁡ θ [ log ⁡ P ( X ∣ θ ) + log ⁡ P ( θ ) ] \begin{aligned} \hat \theta & = \mathop{\arg\max}\limits_{\theta} \log [\mathcal P(\mathcal X \mid \theta) \cdot \mathcal P(\theta)] \\ & = \mathop{\arg\max}\limits_{\theta} \left[\log \mathcal P(\mathcal X \mid \theta) + \log \mathcal P(\theta) \right] \end{aligned} θ^=θargmaxlog[P(Xθ)P(θ)]=θargmax[logP(Xθ)+logP(θ)]

正则化项与先验概率

此时可以对比一下极大似然估计最大后验概率估计的公式结果:
{ MAP :  θ ^ = arg ⁡ max ⁡ θ [ log ⁡ P ( X ∣ θ ) + log ⁡ P ( θ ) ] MLE :  θ ^ = arg ⁡ max ⁡ θ log ⁡ P ( X ∣ θ ) \begin{cases} \text{MAP : } \hat \theta = \mathop{\arg\max}\limits_{\theta} \left[\log \mathcal P(\mathcal X \mid \theta) + \log \mathcal P(\theta) \right] \\ \text{MLE : } \hat \theta = \mathop{\arg\max}\limits_{\theta} \log \mathcal P(\mathcal X \mid \theta) \end{cases} MAP : θ^=θargmax[logP(Xθ)+logP(θ)]MLE : θ^=θargmaxlogP(Xθ)

其中对数似然函数 log ⁡ P ( X ∣ θ ) \log \mathcal P(\mathcal X \mid \theta) logP(Xθ)自身就是一种损失函数,通过最大化 log ⁡ P ( X ∣ θ ) \log \mathcal P(\mathcal X \mid \theta) logP(Xθ)来近似求解真实模型中的最优参数 θ ^ \hat \theta θ^

上述式子仅差一项: log ⁡ P ( θ ) \log \mathcal P(\theta) logP(θ) P ( θ ) \mathcal P(\theta) P(θ)表示参数的先验概率。在贝叶斯主义的思想中,先验概率并不重要,它总是会在大量的实验过程中,逐渐收敛至真实模型对应参数的概率分布

高斯分布与 L 2 L_2 L2正则化

假设该先验分布中的参数 θ \theta θ服从高斯分布

  • 这里要定义 θ \theta θ是一个 K \mathcal K K维向量,这意味着 θ \theta θ K \mathcal K K维权重空间中的一个点:
    θ = ( θ 1 , θ 2 , ⋯   , θ K ) T \theta = (\theta_1,\theta_2,\cdots,\theta_{\mathcal K})^T θ=(θ1,θ2,,θK)T
  • 我们假设 θ \theta θ每个维度的分量 θ k ( k = 1 , 2 , ⋯   , K ) \theta_k(k=1,2,\cdots,\mathcal K) θk(k=1,2,,K)均服从均值为 0 0 0,方差为 σ 2 \sigma^2 σ2的一维高斯分布:
    θ k ∼ N ( 0 , σ 2 ) k = 1 , 2 , ⋯   , K \theta_k \sim \mathcal N(0, \sigma^2) \quad k=1,2,\cdots,\mathcal K θkN(0,σ2)k=1,2,,K

使用概率密度函数可以将 log ⁡ P ( θ ) \log \mathcal P(\theta) logP(θ)表示为:

  • 和样本空间 X \mathcal X X相同,关于 θ \theta θ的权重空间,任意两组基均两两正交。这意味着 K \mathcal K K维特征之间相互‘线性无关’。
  • 将对应概率密度函数代入。
    log ⁡ P ( θ ) = log ⁡ P ( θ 1 , θ 2 , ⋯   , θ K ) = log ⁡ ∏ k = 1 K P ( θ k ) = log ⁡ ∏ k = 1 K { 1 σ ⋅ 2 π exp ⁡ [ − ( θ k − 0 ) 2 2 σ 2 ] } \begin{aligned} \log \mathcal P(\theta) & = \log \mathcal P(\theta_1,\theta_2,\cdots,\theta_{\mathcal K}) \\ & = \log \prod_{k=1}^{\mathcal K} \mathcal P(\theta_k) \\ & = \log \prod_{k=1}^{\mathcal K} \left\{\frac{1}{\sigma \cdot \sqrt{2\pi}} \exp \left[-\frac{(\theta_k - 0)^2}{2\sigma^2}\right]\right\} \end{aligned} logP(θ)=logP(θ1,θ2,,θK)=logk=1KP(θk)=logk=1K{σ2π 1exp[2σ2(θk0)2]}

log ⁡ \log log代入公式中,最终可化简为如下形式
这里 C \mathcal C C表示常数。
log ⁡ P ( θ ) = ∑ k = 1 K log ⁡ { 1 σ ⋅ 2 π exp ⁡ [ − ( θ k − 0 ) 2 2 σ 2 ] } = ∑ k = 1 K { log ⁡ [ 1 σ ⋅ 2 π ] + log ⁡ exp ⁡ [ − ( θ k − 0 ) 2 2 σ 2 ] } = K ⋅ log ⁡ [ 1 σ ⋅ 2 π ] ⏟ 常数 − 1 2 σ 2 ∑ k = 1 K θ k 2 = − 1 2 σ 2 θ T θ + C \begin{aligned} \log \mathcal P(\theta) & = \sum_{k=1}^{\mathcal K} \log \left\{\frac{1}{\sigma \cdot \sqrt{2\pi}} \exp \left[-\frac{(\theta_k - 0)^2}{2\sigma^2}\right]\right\} \\ & = \sum_{k=1}^{\mathcal K}\left\{\log \left[\frac{1}{\sigma \cdot \sqrt{2\pi}}\right] + \log \exp \left[-\frac{(\theta_k - 0)^2}{2\sigma^2}\right]\right\} \\ & = \underbrace{\mathcal K \cdot \log \left[\frac{1}{\sigma \cdot \sqrt{2\pi}}\right]}_{常数} - \frac{1}{2\sigma^2} \sum_{k=1}^{\mathcal K} \theta_k^2 \\ & = -\frac{1}{2\sigma^2} \theta^T\theta + \mathcal C \end{aligned} logP(θ)=k=1Klog{σ2π 1exp[2σ2(θk0)2]}=k=1K{log[σ2π 1]+logexp[2σ2(θk0)2]}=常数 Klog[σ2π 1]2σ21k=1Kθk2=2σ21θTθ+C
这明显就是一个 L 2 L_2 L2正则化项。其中 λ = − 1 2 σ 2 \begin{aligned}\lambda = -\frac{1}{2\sigma^2}\end{aligned} λ=2σ21。也就是说:使用最大后验概率求解最优参数的过程中,先验分布 P ( θ ) \mathcal P(\theta) P(θ)如果选择均值为 0 0 0正态分布,相当于在极大似然估计作为损失函数的基础上,增加了 L 2 L_2 L2正则化作为约束

Laplace \text{Laplace} Laplace分布与 L 1 L_1 L1正则化

同理,如果参数 θ \theta θ各分量均服从一维拉普拉斯分布
θ k ∼ Laplace ( 0 , b ) \theta_k \sim \text{Laplace}(0,b) θkLaplace(0,b)
那么对数条件下的先验概率分布 log ⁡ P ( θ ) \log \mathcal P(\theta) logP(θ)可表示为:
log ⁡ P ( θ ) = ∑ k = 1 K log ⁡ P ( θ k ) = ∑ k = 1 K log ⁡ { 1 2 b exp ⁡ [ − ∣ θ k − 0 ∣ b ] ⏟ 1 − Dim Laplace(0,b) PDF } = K ⋅ log ⁡ 1 2 b ⏟ 常数 − 1 b ∑ k = 1 K ∣ θ k ∣ = − 1 b ∑ k = 1 K ∣ θ k ∣ + C \begin{aligned} \log \mathcal P(\theta) & = \sum_{k=1}^{\mathcal K} \log \mathcal P(\theta_k) \\ & = \sum_{k=1}^{\mathcal K} \log \left\{\underbrace{\frac{1}{2b} \exp \left[-\frac{|\theta_k - 0|}{b}\right]}_{1-\text{Dim Laplace(0,b) PDF}}\right\} \\ & = \underbrace{\mathcal K \cdot \log \frac{1}{2b}}_{常数} -\frac{1}{b} \sum_{k=1}^{\mathcal K} |\theta_k| \\ & = -\frac{1}{b} \sum_{k=1}^{\mathcal K} |\theta_k| + \mathcal C \end{aligned} logP(θ)=k=1KlogP(θk)=k=1Klog 1Dim Laplace(0,b) PDF 2b1exp[bθk0∣] =常数 Klog2b1b1k=1Kθk=b1k=1Kθk+C
也可以看出:先验分布选择了均值为 0 0 0拉普拉斯分布,相当于将极大似然估计作为损失函数的基础上,增加了 L 1 L_1 L1正则化作为约束

同理,我们也可以尝试其他先验分布。如果先验分布是一个常数,此时该分布与参数 θ \theta θ没有关联关系,被忽略。此时最大后验概率被退化成极大似然估计

相关参考:
贝叶斯解释“L1和L2正则化”,本质上是最大后验估计。如何深入理解贝叶斯公式?

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐