

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Kullback-Leibler 分歧 (KL)
<a name="clarify-data-bias-metric-kl-divergence"></a>

Kullback-Leibler 分歧 (KL) 衡量分面 *a* 的观测标签分布 Pa(y) 与分面 *d* 的观测标签分布 Pd(y) 有多大偏差。它也称为 Pa(y) 相对于 Pd(y) 的相对熵，它量化了从 Pa(y) 移动到 Pd(y) 时丢失的信息量。

Kullback-Leibler 分歧的公式如下：

        KL(Pa \$1\$1 Pd) = ∑yPa(y)\$1log[Pa(y)/Pd(y)]

它是对概率 Pa(y) 和 Pd(y) 之间对数差的期望，其中期望值由概率 Pa(y) 加权。这不是分布之间的真正距离，因为它是不对称的，不满足三角形不等式。该实现使用自然对数，得出以奈特为单位的 KL。使用不同的对数基数可以得到成比例的结果，但单位不同。例如，使用基数 2 可以得出以位为单位的 KL。

例如，假设一组贷款申请人（分面 *d*）的批准率为 30%，而其他申请人（分面 *a*）的批准率为 80%。Kullback-Leibler 公式给出了分面 *a* 与分面 *d* 的标签分布差异，如下所示：

        KL = 0.8\$1ln(0.8/0.3) \$1 0.2\$1ln(0.2/0.7) = 0.53

此处的公式中有两个项，因为在本例中，标签是二进制的。除二进制标签外，此衡量标准还可应用于多个标签。例如，在大学录取场景中，假设可能为申请人分配三个类别标签之一：yi = \$1y0, y1, y2\$1 = \$1拒绝, 候补, 录取\$1。

二进制、多类别和连续结果的 KL 指标的值范围为 [0, \$1∞)。
+ 接近零的值意味着不同分面的结果分布情况相似。
+ 正值表示标签分布存在差异，正值越大，差异就越大。