熵,交叉熵,相对熵与KL散度,JS散度。 直白易懂

本文深入探讨了熵、交叉熵、KL散度和JS散度这四个在信息论和机器学习中至关重要的概念。熵作为不确定性度量,交叉熵用于衡量用一个分布描述另一个分布的信息需求,而KL散度和JS散度则分别从不对称和对称角度评估分布间的相似性。JS散度解决了KL散度的不对称问题,并在分布差异较大时保持梯度不为零。

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

随机事件的不确定性度量,也是衡量分布内样本x所需要的信息编码长度,熵越大,不确定性越大。

H ( P ) = Σ P ( x ) l o g 1 P ( x ) H(P) = ΣP(x)log\frac{1}{P(x)} H(P)=ΣP(x)logP(x)1

交叉熵

用其他分布Q衡量分布P内样本所需要的信息编码长度。H(P,Q) >= H§
H ( P , Q ) = Σ P ( x ) l o g 1 Q ( x ) H(P,Q) = ΣP(x)log\frac{1}{Q(x)} H(P,Q)=ΣP(x)logQ(x)1

相对熵 A.K.A. KL散度

用其他分布Q衡量分布P内样本所需要信息编码长度 与 用分布P衡量分布P内样本所需要信息编码长度的 差值。
这个值越大意味着分布越相似,但是D(P,Q)和D(Q,P)未必相等(非对称),D总是大于0(H(P,Q) >= H(P ) , 用Q描述P肯定不可能比用P自己描述自己好)。
D ( P ∣ ∣ Q ) = H ( P , Q ) − H ( P ) = Σ P ( x ) l o g P ( x ) Q ( x ) D(P || Q) = H(P,Q) - H(P) \\ = Σ P(x) log \frac{P(x)}{Q(x)} D(PQ)=H(P,Q)H(P)=ΣP(x)logQ(x)P(x)
也存在一个问题,就是只有P(x)大的时候P和Q分布差异大对KL值的影响比较明显,当P(x)值本身就小的情况,Q(x)的影响就很小了。

JS散度

解决了KL散度不对称的问题,一定程度也解决了只有P(x)大的时候P和Q分布差异大对KL值的影响比较明显问题。
取值范围在[0,log2],P和Q相同时取值为0,相反时取值为1。

J S ( P ∣ ∣ Q ) = J S ( Q ∣ ∣ P ) = 1 2 K L ( P ( X ) ∣ ∣ P ( X ) + Q ( X ) 2 ) + 1 2 K L ( Q ( X ) ∣ ∣ P ( X ) + Q ( X ) 2 ) JS(P || Q) = JS(Q || P) = \\ \frac{1}{2} KL(P(X) || \frac{P(X) + Q(X)}{2}) + \frac{1}{2} KL(Q(X) || \frac{P(X) + Q(X)}{2}) JS(PQ)=JS(QP)=21KL(P(X)2P(X)+Q(X))+21KL(Q(X)2P(X)+Q(X))

** 分布P和Q距离非常远时候,KL=0, JS=常数 ==> 梯度为0 **

互信息

I ( X ; Y ) = D K L ( P ( X , Y ) ∣ ∣ P ( X ) P ( Y ) ) I(X;Y) = D_{KL}(P(X,Y) || P(X)P(Y)) I(X;Y)=DKL(P(X,Y)P(X)P(Y))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值