损失函数-分类-KL 散度(KL Loss)¶
Kullback-Leibler Divergence
Kullback-Leibler Divergence (KL散度),又称为相对熵,是信息论中的一个概念,用于衡量两个概率分布之间的差异。在机器学习中,它常用于评估模型预测分布与真实分布之间的距离。
优点:衡量两个概率分布之间的差异。
应用场景:分类任务中需要比较概率分布。
直观意义¶
信息损失的度量: KL散度衡量了如果用 𝑄 代替 P,会损失多少信息量:
D_kl(P∣∣Q) 越小,表示 Q 越接近 P。
D_kl(P∣∣Q)=0 表示 P=Q。
非对称性:
D_kl(P∣∣Q) != D_kl(Q∣∣P),
这意味着它不是一种真正的“距离”,因为不满足对称性。
KL散度与交叉熵的关系¶
KL散度与交叉熵和熵的关系:
其中
交叉熵 H(P,Q)
熵 H(P)
变体或替代方法¶
反向KL散度: 使用
,适用于某些需要强调 Q(x) 为 0 的场景。- Jensen-Shannon Divergence (JS散度): 是 KL散度的对称变体,定义为
其中 M 为 P 和 Q 的均值分布:
- Jensen-Shannon Divergence (JS散度): 是 KL散度的对称变体,定义为
Wasserstein距离: 用于生成对抗网络(GAN)中的分布对比,解决了 KL散度在某些场景下的数值问题。