KL散度推导

本文详细介绍了KL散度在深度学习中的应用,主要针对离散形式进行推导,涉及两个分布P和Q的实验概率计算,以及当N趋近于无穷大时的分析。后续还会补充信息熵推导KL散度的公式。
摘要由CSDN通过智能技术生成

(图:from DALLE)

一、公式

KL散度是深度学习中,求groundTruth和推理结果概率分布的一个重要数学工具。先给出推导

KL散度分为离散和连续两种形式:

D_{K L}(P \| Q)=\sum_{i} P(i) \log \frac{P(i)}{Q(i)}

D_{K L}(P \| Q)=\int P(x) \log \frac{P(x)}{Q(x)} d x

二、推导

由于我们只用到离散表达的公式,所以这里的证明也是离散的,但是连续KL散度同理。

1、假设我们有两个分布P和Q,现对分布P进行N次实验,得到最终某一个结果的概率就是\prod _i P(i)    ,i是发生的具体事件(有M类),总共进行了N次。

2、如果Q也发生了同样的所有事件,那么得到的结果最终概率为\prod _iQ(i)

3、将这两个最终概率相除\frac{\prod _i P(i)}{\prod _iQ(i)},取对数\sum _ilog(P(i))-\sum _ilog(Q(i))

4、P和Q分布都有M种结果,则P和Q的所有种类事件的次数均为:k_1k_2...k_M\sum _ilog(P(i))-\sum _ilog(Q(i))

=k_1log(p(1))+...k_Mlog(p(M))-k_1log(q(1))-...k_Mlog(q(M))

5、当N足够大时,

\frac{\sum _ilog(P(i))-\sum _ilog(Q(i))}{N}

=p(1)log\frac{p(1)}{q(1)}+...p(M)log\frac{p(M)}{q(M)}

=\sum_{i} p(i) \log \frac{p(i)}{q(i)}

还有一种信息熵推导KL散度的公式,有机会补上

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值