kl散度度量分布_KL散度理解

4b25508feaa39c92b14e2c46574ac8b4.png

1. 概念
考虑某个未知的分布 p(x),假定用一个近似的分布 q(x) 对它进行建模。如果我们使用 q(x) 来建立一个编码体系,用来把 x 的值传给接收者,那么由于我们使用了q(x)而不是真实分布p(x),平均编码长度比用真实分布p(x)进行编码增加的信息量(单位是 nat )为:

(1)

这被称为分布p(x)和分布q(x)之间的 相对熵(relative entropy)或者KL散 度( Kullback-Leibler divergence )
也就是说,当我们知道真实的概率分布之后,可以给出最有效的编码。如果我们使用了不同于真实分布的概率分布,那么我们一定会损失编码效率,并且在传输时增加的平均额外信息量至少等于两个分布之间的KL散度。
注意, 这不是一个对称量,即
2. 为什么KL散度大于等于0
现在要证明的是KL散度满足
,并且当且仅当 p(x) = q(x) 时等号成立。

设实直线上的函数f(x) 是一个非负函数,且:


如果 g 是任意实可测函数且函数
是凸的,
那么有Jensen不等式如下

注意到,-ln x 是严格的凸函数且

,
, f(x)=p(x)

把公式(2)形式的 Jensen 不等式应用于公式(1)给出的 KL散度,直接可得
(3)

只有 q(x) = p(x) 对于所有 x 都成立时,等号才成立,
因此我们可以把 KL 散度看做两个分布 p(x) 和 q(x)之间不相似程度的度量。 3. 最小化 Kullback-Leibler 散度等价于最大化似然函数
假设我们想要对未知分布p(x) 建模,可以试着使用一些参数分布
来近似p(x)。
由可调节的参数
控制(例如一个多元高斯分布)。

通过最小化 p(x) 和
之间关于
的 KL散度可以确定
但是因为不知道 p(x),所以不能直接这么做
如果已经观察到了服从分布 p(x) 的有限数量的训练点集
,其中
,那么关于 p(x) 的期望就可以通过这些点的有限加和,使用公式
来近似,即:
(4)

公式(4)右侧的第二项与
无关,第一项是使用训练集估计的分布
下的
的负对数似然函数。

因此最小化KL散度等价于最大化似然函数。

4. KL散度的测度论定义
如果

是 集合X上的测度,且

由Radon–Nikodym theorem,
的KL散度定义如下:

参考资料:

[1] PRML

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值