Kullback Leibler Distance (or divergence)

本文介绍了K-L距离(相对熵)的概念及其在概率分布差异度量中的应用。文章详细阐述了K-L距离的定义、基本属性,并指出其在实际计算中的挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

K-L距离(相对熵)

K-L距离是两个完全确定的概率分布的非相似性度量。

1.定义:

p1(x)p2(x)是两个连续概率分布,根据定义,p1(x) p2(x)K-L距离D(p1,p2)为:

 

 

离散情况也类似。

如果用E表示p1分布的期望,上述表达式也可写作:

 

 

 

 

 

2.基本属性:

l         D(p1,p2) 的平均值,其中p1(x)为参考分布

l         K-L距离总是非负的。当两个分布想同时它的值是零。

l         K-L距离不是关于p1(x) p2(x)对称的,他也不是一个数学意义上的距离。

我们常常见到的是p1 p2K-L距离的的对称形式,即:

 

 

 

 

K-L距离通常很难精确地计算出来,但是两个分部都是正态分布是计算还是可以实现的。计算过程有点长但是相当有益的。

 

 

 

Kullback Leibler Distance (KL)

 
The Kullback Leibler distance (KL-distance) is a natural distance function from a "true" probability distribution, p, to a "target" probability distribution, q. It can be interpreted as the expected extra message-length per datum due to using a code based on the wrong (target) distribution compared to using a code based on the true distribution.
 
For discrete (not necessarily finite) probability distributions, p={p 1, ..., p n} and q={q 1, ..., q n}, the KL-distance is defined to be
 
KL(p, q) = Σi p i . log 2( pi / qi )
 
For continuous probability densities, the sum is replaced by an integral.
 
KL(p, p) = 0
KL(p, q) ≥ 0
 
Note that the KL-distance is not, in general, symmetric.

From:

http://www.aiaccess.net/English/Glossaries/GlosMod/e_gm_kullbak.htm#tut_1_basic

 

http://www.csse.monash.edu.au/~lloyd/tildeMML/KL/

 

 

### Jensen-Shannon Divergence 和 Wasserstein Distance 的定义 #### Jensen-Shannon Divergence (JS 散度) Jensen-Shannon Divergence 是一种衡量两个概率分布之间相似性的方法。它基于 Kullback-Leibler Divergence,但是更加对称和平滑。具体来说,对于两个离散的概率分布 \( P \) 和 \( Q \),其 JS 散度可以表示为: \[ JSD(P || Q) = \frac{1}{2}D_{KL}(P || M) + \frac{1}{2}D_{KL}(Q || M),\] 其中 \( M=\frac{1}{2}(P+Q) \)[^2]。 这种形式使得 JS 散度不仅具有良好的数学性质,而且在实际应用中表现得更为稳定可靠。 #### Wasserstein Distance (推土机距离) Wasserstein Distance 又被称为 Earth Mover's Distance 或者 EMD,在最优传输理论框架下被定义。该指标描述了一个分布如何通过最少的工作量转变为另一个分布;这里的“工作量”是指将质量从一个位置移动到另一个位置所需的能量总和。更正式地说,给定两个连续型随机变量 X 和 Y 对应的累积分布函数 F_X(x) 和 G_Y(y),则它们之间的 W 距离可写作: \[ W(F,G)=\inf _{\gamma (\cdot ,\cdot )}\left[\int |x-y|\,\mathrm {d} \gamma (x,y)\right],\] 这里 γ 表示所有可能联合分布中的最优解[^3]。 ### 两者的主要区别 - **计算方式**: JS 散度依赖于 KL 散度来构建混合分布并求期望值,而 Wasserstein Distance 则关注于找到使运输成本最低的最佳匹配方案。 - **物理意义**: JS 散度本质上是一个相对熵的概念延伸,反映了信息论上的差异程度;相比之下,Wasserstein Distance 更直观地模拟了现实世界里的物体搬运过程——即把一堆泥土重新分配成另一堆所需做的功。 - **适用场景**: 当处理高维数据时,由于梯度消失等问题的存在,传统的 JS 散度可能会遇到困难。然而,Wasserstein Distance 提供了一种更好的解决方案,因为它能够提供有意义的距离估计即使当支持集不重叠的情况下也能如此。 ```python import numpy as np from scipy.stats import wasserstein_distance, entropy def js_divergence(p, q): m = 0.5 * (p + q) return 0.5 * (entropy(p, m) + entropy(q, m)) # Example usage with two distributions p and q p = np.array([0.1, 0.9]) q = np.array([0.7, 0.3]) js_result = js_divergence(p, q) wd_result = wasserstein_distance(p, q) print(f"Jensen-Shannon Divergence: {js_result}") print(f"Wasserstein Distance: {wd_result}") ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值