一文总结条件熵、交叉熵、相对熵、互信息

原创 2017年09月07日 22:13:40

条件熵:H(Y|X)表示在已知随机变量X的条件下,随机变量Y的不确定性,H(Y|X)定义为:


举个例子:
  有一堆西瓜,已知这堆西瓜的色泽,以及每种色泽对应好瓜和坏瓜的个数,如下所示,设X表示色泽,Y表示好瓜或者坏瓜。





则:




这个例子就是计算条件熵的一个过程,现在证明条件熵公式:








有很多书上的条件熵是这么定义的,如果继续化简就可以得到我们上面定义的条件熵,接着化简:







得证!


信息增益:

  ,表示X出现后随机变量Y的不确定性减少了多少。


  比如上述西瓜的例中,当不知道色泽的时候,好瓜与坏瓜的不确定度为:


  当知道色泽之后,好瓜与坏瓜的不确定度为:


  那么知道色泽之后,好瓜与坏瓜的不确定度减少了:



交叉熵(只谈论离散情况)

  假设有这样一个样本集,p为它的真实分布,q为它的估计分布。如果按照真实分布p来度量识别一个样本所需要的编码长度的期望为:(如果对编码长度不了解的,请看:http://blog.csdn.net/hearthougan/article/details/77774948


  如果使用估计的分布q来表示来自真实分布p的平均编码长度,则:


  因为我们编码的样本来自于真实的分布p,所以乘的是真实概率。在图像分类的时候,比如softmax分类器,在训练的时候,我们已经给定图像的标签,所以这个时候每幅图片的真实概率就是1,这个时候的损失函数就是:


  怎么理解呢?就是让预测的概率值越来越接近于1!(想多了解softmax,请参考http://blog.csdn.net/hearthougan/article/details/71629657

举个知乎上的例子,有4个字母(A,B,C,D)的数据集中,真实分布p=(1/2, 1/2, 0, 0),即A和B出现的概率均为1/2,C和D出现的概率都为0,


  真实分布的编码长度(最优编码长度)

  也就是说,我们仅仅需要一位编码就可以确定所要发送的数据是什么。那么假如我们的估计分布如下:

  那么发送数据的平均编码长度为:


  即为了确定所发送的数据,平均需要长度2编码,才可以。交叉熵可以这么理解:用估计的分布对来自真实分布的样本进行编码,所需要的平均长度

  根据Gibbs' inequality可知交叉熵要大于等于真实分布的信息熵(最优编码)。Gibbs' inequality如下:

对于样本服从分布,对于其他任何概率分布,都有:


当且仅当时,等号成立。


相对熵(KL散度)

  由交叉熵可知,用估计的概率分布所需的编码长度,比真实分布的编码长,但是长多少呢?这个就需要另一个度量,相对熵,也称KL散度。


  相对熵:用交叉熵减去真实分布的信息熵,表示用估计分布计算的平均编码长度比最短平均编码长度长多少。因此有:

  交叉熵=信息熵+相对熵

  由于对数函数时凸函数,则有:


  因此,相对熵始终是大于等于0的。从上面的描述中也可以看得出,相对熵其实可以理解成两种分布的距离。

互信息:

  两个随机变量X,Y的互信息,定义为:X,Y的联合分布P(X,Y)与乘积分布P(X)P(Y)的相对熵:


  怎么理解呢?也就是用乘积分布P(X)P(Y)的交叉熵,减去联合分布的信息熵,就是互信息,还不好理解,就可以看如下图示:


  相当于一种不严谨的说法就是:

  或许另一种等价的定义好理解:


  其实两种定义是等价的:



Reference:

https://baike.baidu.com/item/%E7%9B%B8%E5%AF%B9%E7%86%B5/4233536?fr=aladdin

https://baike.baidu.com/item/%E4%BA%92%E4%BF%A1%E6%81%AF/7423853?fr=aladdin

https://www.zhihu.com/question/41252833

版权声明:本文为博主原创文章,转载需注明出处。

相关文章推荐

信息量、熵、最大熵、联合熵、条件熵、相对熵、互信息

一直就对机器学习中各种XX熵的概念比较模糊,现在总结一下自己的学习心得。 信息量 先说一下信息量的概念,其实熵就是信息量的集合。 摘抄个例子: 英文有26个字母,假设每个字母出现的概率是一样的...

信息熵,条件熵,相对熵

信息熵,条件熵,相对熵 Last Edit 2013/12/30  以前在学习通信原理,信息论时都学习过这样的原理,但是不能从根本理解这样的公式有什么用,能解决什么问题。例如,笔者最近在看用信息论里条...

熵、联合熵、条件熵、交叉熵与相对熵意义

熵:H(X)=−∑xp(x)lnp(x)H(X)=-\sum_x p(x)lnp(x) 衡量不确定性的度量 联合熵: H(X,Y)=−∑x,yp(x,y)lnp(x,y)H(X,Y)=-\sum_{...

C++中的异或运算符^

C++中^运算表示的是二进制的异或运算 2^4=6 010^100=110 使用该运算可以实现无中间变量两数字的兑换 下面的例子实现a和b的置换 a=2; b=4; ...
  • Oukar
  • Oukar
  • 2016年11月01日 19:31
  • 299

5-1 最长连续递增子序列 (20分)

只是把做了的题,一路发起走吧!

【机器学习】信息量,信息熵,交叉熵,KL散度和互信息(信息增益)

首先先强烈推荐一篇外文博客Visual Information Theory这个博客的博主colah是个著名的计算机知识科普达人,之前非常著名的那篇LSTM讲解的文章也是他写的。这篇文章详细讲解了信息...

计算语言学之条件熵与联合熵、相对熵与交叉熵的应用

1. 引言条件熵与联合熵我们在之前已经讲过,大家可以类比一下条件概率和联合概率,就大概知道是什么意思了。不过这里我们还是复习一下条件熵与联合熵的公式。2. 条件熵与联合熵的应用条件熵:在给定X的情况下...

熵模型—— 熵,条件熵,联合熵,相对熵,互信息及其关系,最大熵模型。。

引入1:随机变量函数的分布 给定X的概率密度函数为fX(x), 若Y = aX, a是某正实数,求Y得概率密度函数fY(y). 解:令X的累积概率为FX(x), Y的累积概率为FY(y).则 FY(y...

机器学习基础(五十八)—— 香农熵、相对熵(KL散度)与交叉熵

香农熵(Shannon entropy)信息熵(又叫香农熵)反映了一个系统的无序化(有序化)程度,一个系统越有序,信息熵就越低,反之就越高。如果一个随机变量 XX 的可能取值为 X={x1,x2,…,...

机器学习基础1-熵,相对熵,交叉熵、香农熵

信息量假设X是一个离散型随机变量,其取值集合为X,概率分布函数为p(x)=Pr(X=x),x∈X,我们定义事件X=x0的信息量为: 可以理解为,一个事件发生的概率越大,则它所携带的信息量就越小,而当时...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一文总结条件熵、交叉熵、相对熵、互信息
举报原因:
原因补充:

(最多只允许输入30个字)