信息的表示
如何来确定信息的量级呢,我们可以考虑,如果一个情况,明天的天气有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中可能性,所以我们可以推出信息熵的公式

其实就是P(x)*lg(1/P(x))的和的转化。
交叉熵
举个例子,第二天的天气如下图所示,
其交叉熵就为3,但如果在一个经常天气晴朗的地方,如下图所示

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

这样的交叉熵为2.42bit。
如果短的信息编码给了小概率事件,如下图

则这样的交叉熵计算为4.58bit
交叉熵的具体公式可以看成两个事件,用假定事件的概率分布乘以真实分布的lg,如下图


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