本文主要是介绍神经网络数学基础-香浓信息量、信息熵、交叉熵、相对熵(KL散度),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
香浓信息量
这里以连续随机变量的情况为例。设 为随机变量X的概率分布,即 为随机变量 在 处的概率密度函数值,随机变量 在 处的香农信息量定义为:
这时香农信息量的单位为比特,香农信息量用于刻画消除随机变量在处的不确定性所需的信息量的大小。
如果非连续型随机变量,则为某一具体随机事件的概率。
为什么是这么一个表达式呢?想具体了解的可以参考如下的讨论:
知乎-香农的信息论究竟牛在哪里?
香农信息量_weixinhum-CSDN博客
信息熵
由香农信息量可以知,对于一个已知概率的事件,需要多少的数据量能完整地把它表达清楚。
信息熵则刻画的是,对于整个系统而言,表达系统整体所需要的信息量。比如,dddLdddYdddXddd 这段字母,虽然 L、Y 和 X 的香农信息量比较大,但他们出现的次数明显要比 d 少很多,因此需要信息熵来评估整体系统的信息量。
信息熵=事件香农信息量×事件概率
对于连续随机变量,信息熵 可表示为:
对于离散随机变量,信息熵 可表示为:
注意:前面在说明的时候 log 是以 2 为底的,但是一般情况下在神经网络中,默认以指数 为底,这样算出来的香农信息量虽然不是最小的可用于完整表示事件的比特数,但对于信息熵的含义来说是区别不大的。其实只要这个底数是大于 1 的,都能用来表达信息熵的大小。
举例如下:
zbbbb 的信息熵为:
zrcdf 的信息熵为:
计算所得第二个值较大,即信息量较大,显然观察 zrcdf 的信息量会大于 zbbbb 的信息量,计算符合观察。
交叉熵
假设 是用来拟合 的概率分布, 属于 的样本空间,交叉熵用于衡量 在拟合 的过程中,用于消除不确定性而充分使用的信息量大小。
注意:理解为衡量 为了拟合 所付出的努力。
另外,交叉熵定义里的 “充分使用” 和信息熵定义里的 “所需”的区别,“充分使用” 不一定能达到全部,“所需” 是指全部。
由于在每一个点 处 的香农信息量为 ,也就是在点 处, 消除不确定性而充分使用的信息量为。
注意:理解为衡量 在 处为了拟合p所作的努力),那么就可以计算出在整个样本空间上 消除不确定性而充分使用的总体信息量,即 的数学期望,由于每个 的权重为 ,因此交叉熵 为:
相对熵、KL 散度
又被称为 KL 散度或信息散度,是两个概率分布间差异的非对称性度量 。
在信息论中,相对熵等价于两个概率分布的信息熵的差值,若其中一个概率分布为真实分布,另一个为理论(拟合)分布,则此时相对熵等于交叉熵与真实分布的信息熵之差,表示使用理论分布拟合真实分布时产生的信息损耗 。
相对熵的定义为:
其中, 为真实概率分布, 为预测概率分布
该公式的字面上含义就是:真实事件信息熵 与 拟合事件香农信息量与真实事件概率的乘积 的差的累加。
当预测的概率分布于真实事件的概率分布相似时,KL 散度的绝对值就会比较小;反之,变大。
相对熵是不对称的。
但为什么有缺点,深度学习还要用 KL 散度呢?参考博客:
https://blog.csdn.net/weixinhum/article/details/85064685
这篇关于神经网络数学基础-香浓信息量、信息熵、交叉熵、相对熵(KL散度)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!