为什么在负对数似然的计算中只考虑似然和先验,而不考虑证据(边缘似然)

引言

在概率模型的参数估计中,尤其是在分类和贝叶斯推断的上下文中,我们经常遇到涉及似然 p ( x n ∣ y n ; θ g ) p(x_n | y_n; \theta_g) p(xnyn;θg)先验 p ( y n ; θ b ) p(y_n; \theta_b) p(yn;θb) 的表达式。负对数似然(NLL)函数在参数估计中的常见形式是:

∑ n = 1 N D log ⁡ [ p ( y n ; θ b )   p ( x n ∣ y n ; θ g ) ] \sum_{n=1}^{N_D} \log \left[ p(y_n; \theta_b) \, p(x_n | y_n; \theta_g) \right] n=1NDlog[p(yn;θb)p(xnyn;θg)]

你问到为什么在这个表达式中我们只考虑似然和先验,而不考虑证据(也称为边缘似然) p ( x n ; θ ) p(x_n; \theta) p(xn;θ)。在这篇详细解释中,我们将深入探讨这一选择背后的原因,澄清每个组成部分在参数估计和模型训练中的角色。


关键概念

在深入解释之前,我们先澄清一些关键概念:

  • 似然 p ( x n ∣ y n ; θ g ) p(x_n | y_n; \theta_g) p(xnyn;θg):给定类别标签 y n y_n yn 和参数 θ g \theta_g θg,观察到数据 x n x_n xn 的概率。
  • 先验 p ( y n ; θ b ) p(y_n; \theta_b) p(yn;θb):基于参数 θ b \theta_b θb 的类别标签 y n y_n yn 的概率,表示在看到数据之前对 y n y_n yn 的信念。
  • 证据/边缘似然 p ( x n ; θ ) p(x_n; \theta) p(xn;θ):在模型下观察到数据 x n x_n xn 的概率,它是对所有可能类别标签的积分。
  • 后验 p ( y n ∣ x n ; θ ) p(y_n | x_n; \theta) p(ynxn;θ):给定数据 x n x_n xn 和参数 θ \theta θ 的类别标签 y n y_n yn 的概率。

理解负对数似然

1. 负对数似然函数

对于数据集 { ( x n , y n ) } n = 1 N D \{(x_n, y_n)\}_{n=1}^{N_D} {(xn,yn)}n=1ND,负对数似然函数是:

NLL ( θ ) = − ∑ n = 1 N D log ⁡ p ( y n , x n ; θ ) \text{NLL}(\theta) = - \sum_{n=1}^{N_D} \log p(y_n, x_n; \theta) NLL(θ)=n=1NDlogp(yn,xn;θ)

由于 p ( y n , x n ; θ ) = p ( y n ; θ b )   p ( x n ∣ y n ; θ g ) p(y_n, x_n; \theta) = p(y_n; \theta_b) \, p(x_n | y_n; \theta_g) p(yn,xn;θ)=p(yn;θb)p(xnyn;θg),NLL 变为:

NLL ( θ ) = − ∑ n = 1 N D [ log ⁡ p ( y n ; θ b ) + log ⁡ p ( x n ∣ y n ; θ g ) ] \text{NLL}(\theta) = - \sum_{n=1}^{N_D} \left[ \log p(y_n; \theta_b) + \log p(x_n | y_n; \theta_g) \right] NLL(θ)=n=1ND[logp(yn;θb)+logp(xnyn;θg)]

2. 排除证据

证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 定义为:

p ( x n ; θ ) = ∑ y p ( y ; θ b )   p ( x n ∣ y ; θ g ) p(x_n; \theta) = \sum_{y} p(y; \theta_b) \, p(x_n | y; \theta_g) p(xn;θ)=yp(y;θb)p(xny;θg)

它表示在所有可能的类别标签下观察到 x n x_n xn 的边缘似然。然而,在优化参数 θ \theta θ 时,我们不会在 NLL 中包含 p ( x n ; θ ) p(x_n; \theta) p(xn;θ)。以下是原因:


为什么我们在 NLL 中忽略证据

1. 证据不依赖于给定数据点和标签的参数

当我们考虑一个特定的数据点 x n x_n xn 及其对应的标签 y n y_n yn 时,证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 是一个标准化常数,确保所有可能的 y y y 的概率和为 1。然而,对于给定的 y n y_n yn p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 不影响 θ \theta θ 的估计,因为它与观察到的 y n y_n yn 无关。

2. 在最大似然估计中证据会抵消

在最大似然估计(MLE)中,我们的目标是找到最大化观察数据似然的参数 θ \theta θ。由于证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 是对所有可能的 y y y 的求和,它与观察到的标签 y n y_n yn 无关,因此它作为每个 x n x_n xn 的常数,对 θ \theta θ 不产生影响。

3. 计算上的简化

包括证据将需要为每个数据点计算 p ( x n ; θ ) p(x_n; \theta) p(xn;θ),这涉及对所有可能的类别标签求和。对于类别数较多的情况,这可能会非常耗费计算资源。由于证据对已知 y n y_n yn 的梯度没有贡献,所以在计算上省略它是合乎逻辑的。

4. 关注条件似然

y n y_n yn 是已知的(如在监督学习中),我们更感兴趣的是条件似然 p ( x n ∣ y n ; θ g ) p(x_n | y_n; \theta_g) p(xnyn;θg) 和先验 p ( y n ; θ b ) p(y_n; \theta_b) p(yn;θb)。证据在处理无监督学习或 y n y_n yn 未观测到时才更为重要。


数学解释

1. 完整的概率表达式

联合概率 p ( y n , x n ; θ ) p(y_n, x_n; \theta) p(yn,xn;θ) 可以通过贝叶斯定理表达为:

p ( y n , x n ; θ ) = p ( y n ; θ b )   p ( x n ∣ y n ; θ g ) p(y_n, x_n; \theta) = p(y_n; \theta_b) \, p(x_n | y_n; \theta_g) p(yn,xn;θ)=p(yn;θb)p(xnyn;θg)

我们的目标是最大化联合似然(或最小化 NLL),以便对 θ b \theta_b θb θ g \theta_g θg 进行优化。

2. 证据在参数估计中的作用

当优化参数时,我们可以写出似然:

p ( x n ; θ ) = ∑ y p ( y ; θ b )   p ( x n ∣ y ; θ g ) p(x_n; \theta) = \sum_{y} p(y; \theta_b) \, p(x_n | y; \theta_g) p(xn;θ)=yp(y;θb)p(xny;θg)

但当 y n y_n yn 是已知时,我们对 y n y_n yn 进行条件化,证据对于该数据点来说是一个常数。

3. 证据相对于参数的梯度

证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 相对于参数 θ \theta θ 的梯度是:

∇ θ p ( x n ; θ ) = ∇ θ ( ∑ y p ( y ; θ b )   p ( x n ∣ y ; θ g ) ) \nabla_\theta p(x_n; \theta) = \nabla_\theta \left( \sum_{y} p(y; \theta_b) \, p(x_n | y; \theta_g) \right) θp(xn;θ)=θ(yp(y;θb)p(xny;θg))

然而,当我们考虑一个特定的 y n y_n yn 时,涉及 y ≠ y n y \neq y_n y=yn 的项不会对观测到的数据点 ( x n , y n ) (x_n, y_n) (xn,yn) 的似然做出贡献。


直观的例子

考虑一个简单的二分类问题,类别为 y ∈ { 0 , 1 } y \in \{0, 1\} y{0,1}

  • 先验概率

    p ( y = 0 ; θ b ) = π 0 , p ( y = 1 ; θ b ) = π 1 p(y = 0; \theta_b) = \pi_0, \quad p(y = 1; \theta_b) = \pi_1 p(y=0;θb)=π0,p(y=1;θb)=π1

  • 似然

    p ( x ∣ y = 0 ; θ g ) , p ( x ∣ y = 1 ; θ g ) p(x | y = 0; \theta_g), \quad p(x | y = 1; \theta_g) p(xy=0;θg),p(xy=1;θg)

  • 证据

    p ( x ; θ ) = π 0   p ( x ∣ y = 0 ; θ g ) + π 1   p ( x ∣ y = 1 ; θ g ) p(x; \theta) = \pi_0 \, p(x | y = 0; \theta_g) + \pi_1 \, p(x | y = 1; \theta_g) p(x;θ)=π0p(xy=0;θg)+π1p(xy=1;θg)

当我们观察到 y n y_n yn 时,证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 是对两个类别的求和,但只有一个项对应于观察到的 y n y_n yn。另一个项不会对观察到的数据点的似然做出贡献。


贝叶斯视角

在贝叶斯推断中,当计算参数 θ \theta θ 的后验分布时,证据起到标准化常数的作用:

p ( θ ∣ D ) = p ( D ∣ θ )   p ( θ ) p ( D ) p(\theta | \mathcal{D}) = \frac{p(\mathcal{D} | \theta) \, p(\theta)}{p(\mathcal{D})} p(θD)=p(D)p(Dθ)p(θ)

其中:

  • p ( D ∣ θ ) p(\mathcal{D} | \theta) p(Dθ):数据在给定参数下的似然。
  • p ( θ ) p(\theta) p(θ):参数的先验。
  • p ( D ) p(\mathcal{D}) p(D):证据(边缘似然)。

然而,在最大化后验时,证据 p ( D ) p(\mathcal{D}) p(D) 不依赖于 θ \theta θ,因此对优化没有影响。


最大化条件似然

当我们已经观察到标签 y n y_n yn 时,我们可以直接最大化条件似然 p ( x n ∣ y n ; θ g ) p(x_n | y_n; \theta_g) p(xnyn;θg) 以进行参数估计:

NLL conditional ( θ g ) = − ∑ n = 1 N D log ⁡ p ( x n ∣ y n ; θ g ) \text{NLL}_{\text{conditional}}(\theta_g) = - \sum_{n=1}^{N_D} \log p(x_n | y_n; \theta_g) NLLconditional(θg)=n=1NDlogp(xnyn;θg)

同样,对于先验参数 θ b \theta_b θb,我们可以最大化:

NLL prior ( θ b ) = − ∑ n = 1 N D log ⁡ p ( y n ; θ b ) \text{NLL}_{\text{prior}}(\theta_b) = - \sum_{n=1}^{N_D} \log p(y_n; \theta_b) NLLprior(θb)=n=1NDlogp(yn;θb)

通过专注于这些项,我们有效地最大化了给定模型参数下的观测数据的似然,而不需要多余的计算开销。


另一种视角:判别模型与生成模型

  • 生成模型:建模联合分布 p ( y , x ; θ ) p(y, x; \theta) p(y,x;θ),并可以生成新的数据点。
  • 判别模型:直接建模条件分布 p ( y ∣ x ; θ ) p(y | x; \theta) p(yx;θ),主要关注分类任务。

在判别训练中,我们经常最大化条件似然:

NLL discriminative ( θ ) = − ∑ n = 1 N D log ⁡ p ( y n ∣ x n ; θ ) \text{NLL}_{\text{discriminative}}(\theta) = - \sum_{n=1}^{N_D} \log p(y_n | x_n; \theta) NLLdiscriminative(θ)=n=1NDlogp(ynxn;θ)

在这种情况下,证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 作为标准化部分,但在使用 softmax 函数或逻辑回归时会在对数似然中相互抵消。


实际考虑

1. 计算效率

在 NLL 中包含证据将需要额外的计算,而这些计算对监督学习任务中的 θ \theta θ 的梯度没有贡献。

2. 优化的重点

我们的目标是调整 θ b \theta_b θb θ g \theta_g θg,以最大化观察数据 ( x n , y n ) (x_n, y_n) (xn,yn) 的似然。证据对于这一过程没有额外的信息贡献。

3. 在无监督学习中的证据

在无监督学习或模型中 y n y_n yn 未观察到时,证据变得至关重要,因为它涉及对所有可能 y y y 的积分。在这种情况下,我们需要考虑 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 以进行参数估计。


数学上的解释

让我们考虑 NLL 相对于参数 θ \theta θ 的梯度:

∇ θ NLL ( θ ) = − ∑ n = 1 N D ∇ θ log ⁡ p ( y n ; θ b ) + ∇ θ log ⁡ p ( x n ∣ y n ; θ g ) \nabla_\theta \text{NLL}(\theta) = - \sum_{n=1}^{N_D} \nabla_\theta \log p(y_n; \theta_b) + \nabla_\theta \log p(x_n | y_n; \theta_g) θNLL(θ)=n=1NDθlogp(yn;θb)+θlogp(xnyn;θg)

由于 p ( x n ; θ ) p(x_n; \theta) p(xn;θ) 不依赖于 y n y_n yn,其相对于 θ \theta θ 的梯度不会对观测到的 y n y_n yn 相关联的参数产生贡献。


结论

  • 忽略证据:我们在 NLL 计算中忽略证据 p ( x n ; θ ) p(x_n; \theta) p(xn;θ),因为它不依赖于观测到的标签 y n y_n yn,也不会影响监督学习中的 θ \theta θ 优化。
  • 关注相关项:通过只考虑 p ( y n ; θ b ) p(y_n; \theta_b) p(yn;θb) p ( x n ∣ y n ; θ g ) p(x_n | y_n; \theta_g) p(xnyn;θg),我们集中于直接影响观测数据似然和参数估计的项。
  • 计算效率:排除证据减少了计算复杂性,而不影响参数估计过程。

总结

  • 负对数似然:用于通过最大化观测数据的似然来估计参数。
  • 似然和先验:直接参与计算观测数据点和标签的概率。
  • 证据:作为一个标准化常数,它与观测到的标签无关,因此不会影响监督学习中的参数优化。
  • 参数估计:重点在于最大化 θ b \theta_b θb θ g \theta_g θg 下的似然,这些参数直接参与 p ( y n ; θ b ) p(y_n; \theta_b) p(yn;θb) p ( x n ∣ y n ; θ g ) p(x_n | y_n; \theta_g) p(xnyn;θg)

附加说明

  • 何时考虑证据:在贝叶斯模型选择或模型比较时,证据(边缘似然)变得重要,因为它会惩罚模型复杂性并有助于防止过拟合。
  • 期望最大化(EM)算法:在 y n y_n yn 未观测到(潜变量)的情况下,EM 算法用于参数估计,证据在期望步骤中起到作用。

参考文献

  • Murphy, K. P. (2012). Machine Learning: A Probabilistic Perspective. MIT Press.
  • Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.
  • Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning. Springer.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值