
注:图片来源网络截图
KL散度与交叉熵的定义
KL散度(Kullback-Leibler Divergence)衡量两个概率分布 ( P ) 和 ( Q ) 之间的差异,定义为:
DKL(P∥Q)=∑xP(x)logP(x)Q(x)
D_{KL}(P \parallel Q) = \sum_{x} P(x) \log \frac{P(x)}{Q(x)}
DKL(P∥Q)=x∑P(x)logQ(x)P(x)
交叉熵(Cross-Entropy)衡量用分布 ( Q ) 表示分布 ( P ) 所需的平均编码长度,定义为:
H(P,Q)=−∑xP(x)logQ(x)
H(P, Q) = -\sum_{x} P(x) \log Q(x)
H(P,Q)=−x∑P(x)logQ(x)
数学关系
KL散度可以分解为交叉熵与熵的差:
DKL(P∥Q)=H(P,Q)−H(P)
D_{KL}(P \parallel Q) = H(P, Q) - H(P)
DKL(P∥Q)=H(P,Q)−H(P)
其中 H(P)=−∑xP(x)logP(x) H(P) = -\sum_{x} P(x) \log P(x) H(P)=−x∑P(x)logP(x) 是分布 ( P ) 的熵。
性质差异
KL散度具有不对称性(DKL(P∥Q)≠DKL(Q∥P) D_{KL}(P \parallel Q) \neq D_{KL}(Q \parallel P) DKL(P∥Q)=DKL(Q∥P),且非负DKL≥0 D_{KL} \geq 0 DKL≥0。交叉熵不对称,且不满足非负性(当 Q(x)>1 Q(x) > 1 Q(x)>1 时可能为负)。
应用场景
KL散度常用于模型比较、变分推断或强化学习中的策略差异度量。交叉熵广泛用于分类任务的损失函数,因其计算简便且与KL散度优化目标一致(因 ( H§ ) 是常数)。
计算特点
在机器学习中,最小化交叉熵等价于最小化KL散度(因 H(P) H(P) H(P) 固定)。但交叉熵无需计算 P(x)logP(x) P(x) \log P(x) P(x)logP(x),实际计算更高效。
总结
KL散度是分布差异的直接度量,交叉熵是编码效率的度量。两者在优化中常等价,但KL散度包含更多信息(如熵项),而交叉熵更易计算。
3996

被折叠的 条评论
为什么被折叠?



