KL散度非对称性实战:为什么VAE用反向KL而GAN用前向KL?

KL散度非对称性在生成模型中的关键应用:VAE与GAN的路径选择差异

1. 信息论基础:从熵到KL散度

在理解KL散度的非对称性之前,我们需要先建立几个核心概念:

信息熵(H)衡量一个概率分布的不确定性程度:

def entropy(p):
    return -np.sum(p * np.log(p))

交叉熵(H(p,q))表示用分布q编码来自分布p的数据所需的平均比特数:

def cross_entropy(p, q):
    return -np.sum(p * np.log(q))

KL散度(D_KL(p||q))则衡量两个分布间的差异:

def kl_divergence(p, q):
    return np.sum(p * np.log(p/q))

关键数学关系:

KL散度 = 交叉熵 - 信息熵
D_KL(p||q) = H(p,q) - H(p)

2. KL散度的非对称性本质

KL散度的非对称性体现在其数学定义上:

D_KL(p||q) ≠ D_KL(q||p)

这种非对称性导致两种不同的行为模式:

| 特性 | 前向KL D_KL(p||q) | 反向KL D_KL(q||p) | |---------------|-------------------|-------------------| | 零避免/零趋近 | 零避免 | 零趋近 | | 分布覆盖性 | 宽覆盖 | 窄峰 | | 计算侧重 | q需覆盖p的支撑集 | p需覆盖q的支撑集 |

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值