MLE<=> KL

MLE等价于KL散度


最大似然估计 (MLE) 和Kullback-Leibler散度 (KL散度) 之间有深厚的联系。我将先介绍两者之间的联系,然后通过一个例子进行说明。

首先,回忆一下两者的定义:

  • 最大似然估计:
    θ ^ = arg ⁡ max ⁡ θ L ( θ ∣ X ) \hat{\theta}=\arg \max _\theta L(\theta \mid X) θ^=argθmaxL(θX)

其中, L ( θ ∣ X ) L(\theta \mid X) L(θX) 是似然函数,表示在参数为 θ \theta θ 时观测到数据 X X X 的概率。

  • Kullback-Leibler散度:
    D K L ( P ∥ Q ) = ∑ x P ( x ) log ⁡ ( P ( x ) Q ( x ) ) D_{K L}(P \| Q)=\sum_x P(x) \log \left(\frac{P(x)}{Q(x)}\right) DKL(PQ)=xP(x)log(Q(x)P(x))

其中, P P P Q Q Q 是两个概率分布。KL散度度量了使用概率分布 Q Q Q 来近似概率分布 P P P 时的信息损失。

现在,考虑一个固定的真实分布 P P P 和一个由参数 θ \theta θ 参数化的模型分布 Q θ Q_\theta Qθ 。我们的目标是找到参数 θ \theta θ 使得模型分布 Q θ Q_\theta Qθ 最接近真实分布 P P P 。为此,我们希望最小化它们之间的KL散度。

将KL散度分解,我们有:
D K L ( P ∥ Q θ ) = ∑ x P ( x ) log ⁡ ( P ( x ) Q θ ( x ) ) = ∑ x P ( x ) log ⁡ P ( x ) − ∑ x P ( x ) log ⁡ Q θ ( x ) \begin{aligned} & D_{K L}\left(P \| Q_\theta\right)=\sum_x P(x) \log \left(\frac{P(x)}{Q_\theta(x)}\right) \\ & =\sum_x P(x) \log P(x)-\sum_x P(x) \log Q_\theta(x) \end{aligned} DKL(PQθ)=xP(x)log(Qθ(x)P(x))=xP(x)logP(x)xP(x)logQθ(x)

请注意,第一项与 θ \theta θ 无关,因此最小化KL散度等同于最大化似然函数。
举个简单例子:
考虑一个伯努利分布,真实参数为 p p p ,观测到的数据为 X X X ,其中有 n n n 个1和 N − n N-n Nn 个 0 。我们的模型分布是 Q θ Q_\theta Qθ ,参数为 θ \theta θ

似然函数是:
L ( θ ∣ X ) = θ n ( 1 − θ ) N − n L(\theta \mid X)=\theta^n(1-\theta)^{N-n} L(θX)=θn(1θ)Nn

使用KL散度,我们有:
D K L ( P ∥ Q θ ) = p log ⁡ ( p θ ) + ( 1 − p ) log ⁡ ( 1 − p 1 − θ ) D_{K L}\left(P \| Q_\theta\right)=p \log \left(\frac{p}{\theta}\right)+(1-p) \log \left(\frac{1-p}{1-\theta}\right) DKL(PQθ)=plog(θp)+(1p)log(1θ1p)

为了最小化KL散度,我们希望最大化似然函数,即选择 θ \theta θ 使得 L ( θ ∣ X ) L(\theta \mid X) L(θX) 最大。
这样,通过考虑两者的定义,可以看出MLE实际上是在尝试最小化模型分布与真实分布之间的KL散度。

“通过考虑两者的定义,可以看出MLE实际上是在尝试最小化模型分布与真实分布之间的KL散度。”

首先,Kullback-Leibler散度 (KL散度) 在两个概率分布 P \mathrm{P} P Q \mathrm{Q} Q 之间定义为:
D K L ( P ∥ Q ) = E P [ log ⁡ ( P ( X ) / Q ( X ) ) ] D_{K L}(P \| Q)=E_P[\log (P(X) / Q(X))] DKL(PQ)=EP[log(P(X)/Q(X))]

当我们考虑最大似然估计(MLE)时,我们实际上是考虑了一系列观察数据X,并试图找到参数 θ \theta θ 使得数据在模型Q_ θ \theta θ 下的似然性最大。

考虑固定的真实分布 P \mathrm{P} P 和由参数 θ \theta θ 参数化的模型分布 Q − θ , K L \mathrm{Q}_{-} \theta , \mathrm{KL} QθKL 散度表示为:
D K L ( P ∥ Q θ ) = E P [ log ⁡ ( P ( X ) / Q θ ( X ) ) ] = E P [ log ⁡ P ( X ) ] − E P [ log ⁡ Q θ ( X ) ] \begin{aligned} & D_{K L}\left(P \| Q_\theta\right)=E_P\left[\log \left(P(X) / Q_\theta(X)\right)\right] \\ & =E_P[\log P(X)]-E_P\left[\log Q_\theta(X)\right] \end{aligned} DKL(PQθ)=EP[log(P(X)/Qθ(X))]=EP[logP(X)]EP[logQθ(X)]

这里, E P [ log ⁡ P ( X ) ] E_P[\log P(X)] EP[logP(X)] 是真实分布 P \mathrm{P} P 下的期望值,并且与参数 θ \theta θ 无关。因此,最小化 D K L ( P ∥ Q θ ) D_{K L}\left(P \| Q_\theta\right) DKL(PQθ) 相当于最大化似然函数的负对数:
− E P [ log ⁡ Q θ ( X ) ] = − ∑ x P ( x ) log ⁡ Q θ ( x ) -E_P\left[\log Q_\theta(X)\right]=-\sum_x P(x) \log Q_\theta(x) EP[logQθ(X)]=xP(x)logQθ(x)

在实际应用中,我们没有真实分布 P \mathrm{P} P 的直接访问,但我们有观测数据。因此,我们用观测数据的经验分布来代替真实分布 P \mathrm{P} P ,并使用该经验分布的期望来估计负对数似然。

结论: MLE尝试找到参数 θ \theta θ 使得模型Q_ θ \theta θ 下的观测数据的似然性最大。从KL散度的角度看,这等价于最小化模型分布Q_ θ \theta θ 与观测数据经验分布 (代表真实分布 P P P ) 之间的KL散度。

因此,当我们使用MLE方法时,我们实际上是在尝试找到参数值 θ \theta θ ,使得参数化的模型分布 Q_日尽可能接近观测数据的经验分布,从而最小化它们之间的KL散度。

根据你上面的意思,那 − E P [ log ⁡ Q θ ( X ) ] -E_P[\log Q_{\theta}(X)] EP[logQθ(X)]就是 似然函数的负对数?

我刚才的表述有些不精确。让我们更明确地探讨这一点。
给定观测数据集 X = { x 1 , x 2 , … , x N } X=\left\{x_1, x_2, \ldots, x_N\right\} X={x1,x2,,xN} ,似然函数表示为:
L ( θ ∣ X ) = ∏ i = 1 N Q θ ( x i ) L(\theta \mid X)=\prod_{i=1}^N Q_\theta\left(x_i\right) L(θX)=i=1NQθ(xi)

对数似然函数是似然函数的自然对数:
ℓ ( θ ∣ X ) = log ⁡ L ( θ ∣ X ) = ∑ i = 1 N log ⁡ Q θ ( x i ) \ell(\theta \mid X)=\log L(\theta \mid X)=\sum_{i=1}^N \log Q_\theta\left(x_i\right) (θX)=logL(θX)=i=1NlogQθ(xi)

为了找到最大似然估计,我们希望最大化对数似然函数。

在之前的讨论中,我提到了:
− E P [ log ⁡ Q θ ( X ) ] = − ∑ x P ( x ) log ⁡ Q θ ( x ) -E_P\left[\log Q_\theta(X)\right]=-\sum_x P(x) \log Q_\theta(x) EP[logQθ(X)]=xP(x)logQθ(x)

这实际上是期望的负对数似然,其中的期望是基于真实分布 P \mathrm{P} P 计算的。但是,在实际的最大似然估计中,我们通常使用观测数据的经验分布来代替真实分布,所以我们尝试最大化对数似然函数 ℓ ( θ ∣ X ) \ell(\theta \mid X) (θX) ,而不是最小化负对数似然。

所以,你是对的。在给定观测数据的情况下,我们不直接使用 − E P [ log ⁡ Q θ ( X ) ] -E_P\left[\log Q_\theta(X)\right] EP[logQθ(X)] ,而是使用对数似然函数 ℓ ( θ ∣ X ) \ell(\theta \mid X) (θX) 。我的之前的描述可能引起了一些混看,对此我深感抱歉。

对数似然函数:
l ( θ ∣ X ) = log ⁡ L ( θ ∣ X ) = ∑ i = 1 N log ⁡ Q θ ( x i ) l(\theta|X)=\log L(\theta \mid X)=\sum_{i=1}^N \log Q_\theta\left(x_i\right) l(θX)=logL(θX)=i=1NlogQθ(xi) 其实和 − E P [ log ⁡ Q θ ( X ) ] = − ∑ x P ( x ) log ⁡ Q θ ( x ) -E_P\left[\log Q_\theta(X)\right]=-\sum_x P(x) \log Q_\theta(x) EP[logQθ(X)]=xP(x)logQθ(x)是等价的。只是 ∑ i = 1 N log ⁡ Q θ ( x i ) \sum_{i=1}^N \log Q_\theta\left(x_i\right) i=1NlogQθ(xi)需要再乘一个 1 N \frac{1}{N} N1。 是这样吗?
比如给定的观测数据为 X = 1 , 2 , 2 , 3 , 2 , 1 X={1,2, 2, 3,2, 1} X=1,2,2,3,2,1
那对于对数似然函数 ℓ ( θ ∣ X ) = 2 ∗ log ⁡ Q θ ( 1 ) + 3 ∗ log ⁡ Q θ ( 2 ) + 1 ∗ log ⁡ Q θ ( 2 ) \ell(\theta|X)=2*\log Q_{\theta}(1) + 3* \log Q_{\theta}(2)+1*\log Q_{\theta}(2) (θX)=2logQθ(1)+3logQθ(2)+1logQθ(2)
那前面的系数 2 , 3 , 1 2, 3, 1 2,3,1都乘以一个 1 N \frac{1}{N} N1就变成了 P ( x ) P(x) P(x)了。是这样吗?
根据你上面的意思,那 − E P [ log ⁡ Q θ ( X ) ] -E_P[\log Q_{\theta}(X)] EP[logQθ(X)]就是 似然函数的负对数?

你的理解是正确的。为了清晰地说明这一点,让我们分步骤地进行讨论。

首先,考虑对数似然函数:
ℓ ( θ ∣ X ) = ∑ i = 1 N log ⁡ Q θ ( x i ) \ell(\theta \mid X)=\sum_{i=1}^N \log Q_\theta\left(x_i\right) (θX)=i=1NlogQθ(xi)

现在,考虑经验分布 (观测数据的分布) :
P ^ ( x ) =  观测到  x  的次数  N \hat{P}(x)=\frac{\text { 观测到 } x \text { 的次数 }}{N} P^(x)=N 观测到 x 的次数 

对于你给的例子,数据集为 X = { 1 , 2 , 2 , 3 , 2 , 1 } X=\{1,2,2,3,2,1\} X={1,2,2,3,2,1} 。则:
P ^ ( 1 ) = 2 6 = 1 3 P ^ ( 2 ) = 3 6 = 1 2 P ^ ( 3 ) = 1 6 \begin{aligned} & \hat{P}(1)=\frac{2}{6}=\frac{1}{3} \\ & \hat{P}(2)=\frac{3}{6}=\frac{1}{2} \\ & \hat{P}(3)=\frac{1}{6} \end{aligned} P^(1)=62=31P^(2)=63=21P^(3)=61

基于经验分布的负对数似然期望是:
− ∑ x P ^ ( x ) log ⁡ Q θ ( x ) = − ( 1 3 log ⁡ Q θ ( 1 ) + 1 2 log ⁡ Q θ ( 2 ) + 1 6 log ⁡ Q θ ( 3 ) ) \begin{aligned} & -\sum_x \hat{P}(x) \log Q_\theta(x) \\ & =-\left(\frac{1}{3} \log Q_\theta(1)+\frac{1}{2} \log Q_\theta(2)+\frac{1}{6} \log Q_\theta(3)\right) \end{aligned} xP^(x)logQθ(x)=(31logQθ(1)+21logQθ(2)+61logQθ(3))

当你考虑对数似然函数时:
ℓ ( θ ∣ X ) = 2 log ⁡ Q θ ( 1 ) + 3 log ⁡ Q θ ( 2 ) + 1 log ⁡ Q θ ( 3 ) \ell(\theta \mid X)=2 \log Q_\theta(1)+3 \log Q_\theta(2)+1 \log Q_\theta(3) (θX)=2logQθ(1)+3logQθ(2)+1logQθ(3)

可以看到,当你将对数似然函数乘以 1 N \frac{1}{N} N1 ,得到:
1 6 ℓ ( θ ∣ X ) = 1 3 log ⁡ Q θ ( 1 ) + 1 2 log ⁡ Q θ ( 2 ) + 1 6 log ⁡ Q θ ( 3 ) \frac{1}{6} \ell(\theta \mid X)=\frac{1}{3} \log Q_\theta(1)+\frac{1}{2} \log Q_\theta(2)+\frac{1}{6} \log Q_\theta(3) 61(θX)=31logQθ(1)+21logQθ(2)+61logQθ(3)

这与基于经验分布的负对数似然期望是一致的,只是符号相反。
因此,确实,当你考虑观测数据的经验分布,并将对数似然函数乘以 1 N \frac{1}{N} N1 ,你实际上得到了基于经验分布的负对数似然期望的正值。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值