两个高斯分布KL散度推导

本文详细解释了Kullback-Leibler散度(KL散度)的概念,包括其定义、离散和连续随机变量的表示,以及在机器学习中的应用,特别给出了两个高斯分布间的KL散度计算公式。
摘要由CSDN通过智能技术生成

KL散度基本概念

Kullback-Leibler 散度(KL散度),也称为相对熵,是衡量两个概率分布相对差异的一种方法。它是信息论中的一个概念,由Solomon Kullback和Richard Leibler在1951年提出。KL散度是非对称的,这意味着从分布 P P P到分布 Q Q Q的KL散度通常不等于从分布 Q Q Q到分布 P P P的KL散度。

对于离散随机变量,KL散度定义为:

D K L ( P ∥ Q ) = ∑ x P ( x ) log ⁡ ( P ( x ) Q ( x ) ) D_{KL}(P \parallel 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是两个概率分布,且 P ( x ) P(x) P(x)是在 x x x P P P的概率,而 Q ( x ) Q(x) Q(x)是在 x x x Q Q Q的概率。对数底通常为2(比特为单位)或 e e e(自然单位)。

对于连续随机变量,KL散度通过概率密度函数来定义,并通过积分来计算:

D K L ( P ∥ Q ) = ∫ − ∞ ∞ p ( x ) log ⁡ ( p ( x ) q ( x ) ) d x D_{KL}(P \parallel Q) = \int_{-\infty}^{\infty} p(x) \log \left(\frac{p(x)}{q(x)}\right) dx DKL(PQ)=p(x)log(q(x)p(x))dx

其中, p ( x ) p(x) p(x) q ( x ) q(x) q(x)分别是连续随机变量的两个概率密度函数。

KL散度在机器学习、统计建模和信息论中有广泛的应用,例如在模型选择、贝叶斯推理和变分推断中。

两个高斯分布KL散度推导

计算两个连续概率分布的KL散度涉及积分运算,因为连续分布的概率是通过概率密度函数 (pdf) 定义的。

这里是一个计算两个高斯分布KL散度的例子,其中 p ( x ) p(x) p(x)是均值为 μ 1 \mu_1 μ1和方差为 σ 1 2 \sigma_1^2 σ12的分布, q ( x ) q(x) q(x)是均值为 μ 2 \mu_2 μ2和方差为 σ 2 2 \sigma_2^2 σ22的分布:

D K L ( P ∥ Q ) = log ⁡ ( σ 2 σ 1 ) + σ 1 2 + ( μ 1 − μ 2 ) 2 2 σ 2 2 − 1 2 D_{KL}(P \parallel Q) = \log\left(\frac{\sigma_2}{\sigma_1}\right) + \frac{\sigma_1^2 + (\mu_1 - \mu_2)^2}{2\sigma_2^2} - \frac{1}{2} DKL(PQ)=log(σ1σ2)+2σ22σ12+(μ1μ2)221

具体推导如下:

P P P为均值 μ 1 \mu_1 μ1、方差 σ 1 2 \sigma_1^2 σ12的高斯分布, Q Q Q为均值 μ 2 \mu_2 μ2、方差 σ 2 2 \sigma_2^2 σ22的高斯分布。它们的概率密度函数分别为:

p ( x ) = 1 2 π σ 1 2 e − ( x − μ 1 ) 2 2 σ 1 2 p(x) = \frac{1}{\sqrt{2\pi\sigma_1^2}} e^{-\frac{(x-\mu_1)^2}{2\sigma_1^2}} p(x)=2πσ12 1e2σ12(xμ1)2
q ( x ) = 1 2 π σ 2 2 e − ( x − μ 2 ) 2 2 σ 2 2 q(x) = \frac{1}{\sqrt{2\pi\sigma_2^2}} e^{-\frac{(x-\mu_2)^2}{2\sigma_2^2}} q(x)=2πσ22 1e2σ22(xμ2)2

KL散度定义为:

D K L ( P ∥ Q ) = ∫ − ∞ ∞ p ( x ) log ⁡ ( p ( x ) q ( x ) ) d x D_{KL}(P \parallel Q) = \int_{-\infty}^{\infty} p(x) \log\left(\frac{p(x)}{q(x)}\right) dx DKL(PQ)=p(x)log(q(x)p(x))dx

将高斯密度函数代入,分解对数项并简化:

D K L ( P ∥ Q ) = ∫ − ∞ ∞ p ( x ) [ log ⁡ ( σ 2 σ 1 ) − ( x − μ 1 ) 2 2 σ 1 2 + ( x − μ 2 ) 2 2 σ 2 2 ] d x D_{KL}(P \parallel Q) = \int_{-\infty}^{\infty} p(x) \left[ \log\left(\frac{\sigma_2}{\sigma_1}\right) - \frac{(x-\mu_1)^2}{2\sigma_1^2} + \frac{(x-\mu_2)^2}{2\sigma_2^2} \right] dx DKL(PQ)=p(x)[log(σ1σ2)2σ12(xμ1)2+2σ22(xμ2)2]dx

接下来分三个部分积分:

  1. 第一部分是 log ⁡ ( σ 2 σ 1 ) \log\left(\frac{\sigma_2}{\sigma_1}\right) log(σ1σ2)乘以 p ( x ) p(x) p(x)的积分,即:

∫ − ∞ ∞ p ( x ) log ⁡ ( σ 2 σ 1 ) d x = log ⁡ ( σ 2 σ 1 ) \int_{-\infty}^{\infty} p(x) \log\left(\frac{\sigma_2}{\sigma_1}\right) dx = \log\left(\frac{\sigma_2}{\sigma_1}\right) p(x)log(σ1σ2)dx=log(σ1σ2)

因为 p ( x ) p(x) p(x)的积分(即概率)总和为1。

  1. 第二部分是 ( x − μ 1 ) 2 2 σ 1 2 \frac{(x-\mu_1)^2}{2\sigma_1^2} 2σ12(xμ1)2乘以 p ( x ) p(x) p(x)的积分。由于 ( x − μ 1 ) 2 (x-\mu_1)^2 (xμ1)2 p ( x ) p(x) p(x)的方差项(换而言之这个积分就是 V a r ( X ) = E [ ( X − E [ X ] ) 2 ] Var(X) = E[(X - E[X])^2] Var(X)=E[(XE[X])2]),根据高斯分布定义,其积分等于 σ 1 2 \sigma_1^2 σ12,即:

∫ − ∞ ∞ p ( x ) ( x − μ 1 ) 2 2 σ 1 2 d x = 1 2 \int_{-\infty}^{\infty} p(x) \frac{(x-\mu_1)^2}{2\sigma_1^2} dx = \frac{1}{2} p(x)2σ12(xμ1)2dx=21

  1. 第三部分是 ( x − μ 2 ) 2 2 σ 2 2 \frac{(x-\mu_2)^2}{2\sigma_2^2} 2σ22(xμ2)2乘以 p ( x ) p(x) p(x)的积分。由于 x x x的分布与 μ 2 \mu_2 μ2 σ 2 \sigma_2 σ2无关,这个积分涉及到展开 ( x − μ 2 ) 2 (x-\mu_2)^2 (xμ2)2并完成积分。

为了计算这个积分,我们首先将 ( x − μ 2 ) 2 (x-\mu_2)^2 (xμ2)2展开:

( x − μ 2 ) 2 = x 2 − 2 x μ 2 + μ 2 2 (x-\mu_2)^2 = x^2 - 2x\mu_2 + \mu_2^2 (xμ2)2=x22xμ2+μ22

然后,我们将展开后的表达式代入积分中,得到三个部分:

1 2 σ 2 2 [ ∫ − ∞ ∞ x 2 p ( x ) d x − 2 μ 2 ∫ − ∞ ∞ x p ( x ) d x + μ 2 2 ∫ − ∞ ∞ p ( x ) d x ] \frac{1}{2\sigma_2^2} \left[ \int_{-\infty}^{\infty} x^2 p(x) dx - 2\mu_2 \int_{-\infty}^{\infty} x p(x) dx + \mu_2^2 \int_{-\infty}^{\infty} p(x) dx \right] 2σ221[x2p(x)dx2μ2xp(x)dx+μ22p(x)dx]

接下来,我们计算每个部分:

  1. 第一部分是关于 x 2 x^2 x2的高斯积分,可以通过将 x x x视为 x = ( x − μ 1 ) + μ 1 x = (x-\mu_1)+\mu_1 x=(xμ1)+μ1并展开 x 2 x^2 x2,然后使用高斯积分的已知结果来计算。这个部分的结果是 σ 1 2 + μ 1 2 \sigma_1^2 + \mu_1^2 σ12+μ12

  2. 第二部分是关于 x x x的高斯积分,它是 μ 1 \mu_1 μ1,因为 x x x的期望值是 μ 1 \mu_1 μ1

  3. 第三部分是一个标准的高斯积分,其结果是 1,因为高斯分布的总积分为 1。

将这些结果组合起来,我们得到:

1 2 σ 2 2 [ ( σ 1 2 + μ 1 2 ) − 2 μ 2 μ 1 + μ 2 2 ] \frac{1}{2\sigma_2^2} \left[ (\sigma_1^2 + \mu_1^2) - 2\mu_2\mu_1 + \mu_2^2 \right] 2σ221[(σ12+μ12)2μ2μ1+μ22]

简化后得到:

1 2 σ 2 2 ( σ 1 2 + ( μ 1 − μ 2 ) 2 ) \frac{1}{2\sigma_2^2} (\sigma_1^2 + (\mu_1 - \mu_2)^2) 2σ221(σ12+(μ1μ2)2)

所以,

∫ − ∞ ∞ p ( x ) ( x − μ 2 ) 2 2 σ 2 2 d x = σ 1 2 + ( μ 1 − μ 2 ) 2 2 σ 2 2 \int_{-\infty}^{\infty} p(x) \frac{(x-\mu_2)^2}{2\sigma_2^2} dx = \frac{\sigma_1^2 + (\mu_1 - \mu_2)^2}{2\sigma_2^2} p(x)2σ22(xμ2)2dx=2σ22σ12+(μ1μ2)2

将这三个部分合并,我们得到:

D K L ( P ∥ Q ) = log ⁡ ( σ 2 σ 1 ) + σ 1 2 + ( μ 1 − μ 2 ) 2 2 σ 2 2 − 1 2 D_{KL}(P \parallel Q) = \log\left(\frac{\sigma_2}{\sigma_1}\right) + \frac{\sigma_1^2 + (\mu_1 - \mu_2)^2}{2\sigma_2^2} - \frac{1}{2} DKL(PQ)=log(σ1σ2)+2σ22σ12+(μ1μ2)221

这是两个高斯分布之间的KL散度的封闭形式解。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

u小鬼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值