KL散度的介绍

KL散度

KL 散度(Kullback-Leibler Divergence,全称库尔贝克-勒布莱尔散度) ,又称相对熵(Relative Entropy) ,是概率论与信息论中用来衡量两个概率分布之间差异程度的一种量化指标。

在数据科学和机器学习(如 t-SNE 降维、变分自编码器 VAE、生成对抗网络 GAN 等)中,它常被用作损失函数(Loss Function),用来指导模型去拟合真实的数据分布。

一、 直观理解:它到底在衡量什么?

假设我们有一个真实的概率分布 PPP ,和一个模型预测或近邻估计的近似分布 QQQ

  • 信息差的角度: 如果我们用分布 QQQ 来代替真实分布 PPP,在这个过程中损失了多少额外的信息?损失的信息量越大,KL 散度就越大。
  • 分布距离的角度: 它衡量了分布 QQQ 偏离分布 PPP 有"多远"。如果两个分布完全相同(P=QP = QP=Q),KL 散度就等于 0。

二、 数学定义与计算公式

对于相同的随机变量范围,根据变量类型分为离散型和连续型公式:

1. 离散型概率分布公式

假设随机变量取值为 x1,x2,...,xNx_1, x_2, \dots, x_Nx1,x2,...,xN,分布 PPP 和 QQQ 的 KL 散度定义为:

KL(P∥Q)=∑iP(xi)ln⁡(P(xi)Q(xi))\text{KL}(P \parallel Q) = \sum_{i} P(x_i) \ln \left( \frac{P(x_i)}{Q(x_i)} \right)KL(P∥Q)=i∑P(xi)ln(Q(xi)P(xi))

  • 展开拆解: 利用对数性质 ln⁡(ab)=ln⁡a−ln⁡b\ln(\frac{a}{b}) = \ln a - \ln bln(ba)=lna−lnb,可以化简为:

    KL(P∥Q)=∑iP(xi)ln⁡P(xi)−∑iP(xi)ln⁡Q(xi)=−H(P)+H(P,Q)\text{KL}(P \parallel Q) = \sum_{i} P(x_i) \ln P(x_i) - \sum_{i} P(x_i) \ln Q(x_i) = -H(P) + H(P, Q)KL(P∥Q)=i∑P(xi)lnP(xi)−i∑P(xi)lnQ(xi)=−H(P)+H(P,Q)

    • H(P)H(P)H(P) 是分布 PPP 的信息熵(Entropy)
    • H(P,Q)H(P, Q)H(P,Q) 是 PPP 与 QQQ 的交叉熵(Cross-Entropy)
    • 结论: KL散度=交叉熵−信息熵\text{KL} \text{散度} = \text{交叉熵} - \text{信息熵}KL散度=交叉熵−信息熵。这也是为什么在分类问题中,优化交叉熵就等价于优化 KL 散度。
2. 连续型概率分布公式

KL(P∥Q)=∫−∞+∞p(x)ln⁡(p(x)q(x))dx\text{KL}(P \parallel Q) = \int_{-\infty}^{+\infty} p(x) \ln \left( \frac{p(x)}{q(x)} \right) dxKL(P∥Q)=∫−∞+∞p(x)ln(q(x)p(x))dx

三、 KL 散度的三大核心性质

  1. 非负性(Non-negativity):

    KL(P∥Q)≥0\text{KL}(P \parallel Q) \ge 0KL(P∥Q)≥0

    恒大于等于 0。当且仅当对于所有的 xxx 都有 P(x)=Q(x)P(x) = Q(x)P(x)=Q(x) 时,KL(P∥Q)=0\text{KL}(P \parallel Q) = 0KL(P∥Q)=0。(此性质由吉布斯不等式/Jensen 不等式证明)

  2. 不对称性(Asymmetry)------ 核心注意点!

    KL(P∥Q)≠KL(Q∥P)\text{KL}(P \parallel Q) \neq \text{KL}(Q \parallel P)KL(P∥Q)=KL(Q∥P)

    • 也就是说,从 PPP 到 QQQ 的散度不等于从 QQQ 到 PPP 的散度。
    • 正因为这种不对称性,KL 散度在数学上不能被称为真正的"距离" (严格数学意义上的距离指标必须满足对称性,如欧氏距离)。如果需要对称的距离度量,可以使用基于 KL 散度改进的 JS 散度(Jensen-Shannon Divergence)
  3. 方向选择的影响(在优化中的不同行为):

    • KL(P∥Q)\text{KL}(P \parallel Q)KL(P∥Q)(前向 KL / 均值选择 Mode-averaging): 当 P(x)>0P(x) > 0P(x)>0 时,Q(x)Q(x)Q(x) 不能为 0,否则 ln⁡PQ→∞\ln \frac{P}{Q} \to \inftylnQP→∞ 惩罚巨大。因此 QQQ 会倾向于"盖住" PPP 的所有区域,适合概率估计(如 t-SNE)。
    • KL(Q∥P)\text{KL}(Q \parallel P)KL(Q∥P)(反向 KL / 模态选择 Mode-seeking): QQQ 会优先拟合 PPP 的主要峰值,倾向于"避开" P(x)≈0P(x) \approx 0P(x)≈0 的区域,常用于变分推断(Variational Inference)。

四、 在 t-SNE 降维中的应用

L=KL(P∥Q)=∑i≠jpijln⁡(pijqij)L = \text{KL}(P \parallel Q) = \sum_{i \neq j} p_{ij} \ln \left( \frac{p_{ij}}{q_{ij}} \right)L=KL(P∥Q)=i=j∑pijln(qijpij)

  • PPP 是高维数据的真实分布: 点对之间真实的相对相似度。
  • QQQ 是低维数据的映射分布: 在低维空间里当前生成的分布。
  • 优化过程: 模型通过梯度下降不断更新低维点的坐标,使 KL 散度 LLL 越来越小,最终让低维分布 QQQ 完美贴合高维分布 PPP,实现高质量的数据降维与可视化。
相关推荐
richard_first2 小时前
第3章 PTQ:不用重新训练也能量化 LLM
人工智能·深度学习·语言模型·自然语言处理·transformer
张祥6422889042 小时前
牛顿迭代法求解开普勒方程:从RTKLIB源码到数值分析
人工智能·算法·机器学习
tq10862 小时前
归属感产生临境创造性
人工智能
Theo_xx2 小时前
声学感知基础:8.Range Bin、Range Profile 与 Range-Time Map
人工智能·无线感知·声学感知
欣欣之王来了2 小时前
AI合规学习:核心知识点梳理与学习路径规划
人工智能
二川bro2 小时前
Playwright MCP浏览器自动化实战,AI直接操控浏览器
人工智能
虞七月2 小时前
2026企业AI办公工具选型完全指南
人工智能·ai编程
一次旅行2 小时前
2026‑09‑16 AI产业深度解读|GPT‑5.5即将下线迁移、AI安全路线大辩论、Perplexity自研数据库大幅降本
人工智能·安全·开源
llilian_162 小时前
北斗授时卡同步解决方案 gnss授时卡 计算机时间同步板卡
大数据·网络·人工智能·功能测试·51单片机