熵,交叉熵及相对熵

信息的表示

如何来确定信息的量级呢,我们可以考虑,如果一个情况,明天的天气有50%概率下雨,50%的概率晴天,那么该事件多少信息量呢。

bit

一个bit,即要么为0,要么为1,上述事件要么是下雨1, 要么是晴天0, 即我用1个bit就能表示该事件,进一步来考虑一个问题,25%概率晴,25%概率多云,25%概率阴,25%概率下雨,这个时候信息量是多少呢,利用编码,我们可以把4中情况分别编码成00, 01, 10, 11来做出,那么平均信息量0.25 * 2+0.25 * 2+0.25 * 2+0.25 * 2 = 2

什么是熵,首先要看一下什么是信息,比如我有一枚硬币,已经可以看到正面向上,那它就有一个bit的信息量,同样的,反面向上,也是一个bit的信息量,但如果我抛起硬币接住并且盖住不让你看,那么这个时候对于你,硬币向上向下是不确定的,我们可以把这个不确定时间的信息量称为熵。
那么这个时候的熵量是多少呢,其实类似上面的晴雨天例子,这时候的量就是0.51 + 0.51 = 1 bit的信息量,其中的0.5为相关概率,1为事件总数的lg结果,因为一个bit是2中可能性,所以我们可以推出信息熵的公式

entropy.png

其实就是P(x)*lg(1/P(x))的和的转化。

交叉熵

举个例子,第二天的天气如下图所示,
cross1.png

其交叉熵就为3,但如果在一个经常天气晴朗的地方,如下图所示
cross2.png

其信息熵计算则为2.23bit, 天气预报台用3bit给我们传递了2.23bit的信息,若想用更少的bit传递信息,可以像如下图编码
cross3.png

这样的交叉熵为2.42bit。

如果短的信息编码给了小概率事件,如下图
cross4.png

则这样的交叉熵计算为4.58bit

交叉熵的具体公式可以看成两个事件,用假定事件的概率分布乘以真实分布的lg,如下图


cross5.png

cross_equ.png

相对熵

有了信息熵和交叉熵的概念,相对熵就很简单了,就是交叉熵的值减去信息熵的值,概念上也叫KL Divergence

你可能感兴趣的:(熵,交叉熵及相对熵)