信息论的熵

1.  前言

熵的概念最早起源于物理学,用于度量一个热力学系统的无序程度。

在信息论里则叫信息量,即熵是对不确定性的度量。从控制论的角度来看,应叫不确定性。信息论的创始人香农在其著作《通信的数学理论》中提出了建立在概率统计模型上的信息度量。他把信息定义为“用来消除不确定性的东西”。在信息世界,熵越高,则能传输越多的信息,熵越低,则意味着传输的信息越少。

当我们不知道某事物具体状态,却知道它有几种可能性时,显然,可能性种类愈多,不确定性愈大。不确定性愈大的事物,我们最后确定了、知道了,这就是说我们从中得到了愈多的信息,也就是信息量大。所以,熵、不确定性、信息量,这三者是同一个数值。最简单的是只有两种可能性,非此即彼,我们就以这种事物的信息量为单位,叫1比特(bit)。4种可能性,用二分法,分为2组,我们要非此即彼地确定2次,才能确定其状态,所以含有2比特信息量。如果可能性数目有2的n次方(N=2^n),那就是n比特,即信息量等于可能性数目N的‘以2为底的对数’:H=㏒2(N)=㏒(N)/㏒(2)。后一个等号说明,以2为底的对数㏒2可用普通对数㏒(以10为底)来计算,即用N的普通对数除2的普通对数。N=3种可能性时,信息量H=㏒(3)/㏒(2)=1.585。只要有函数型计算器,我们就可以进行以下简单实例的验算。

我们现在不是讨论事物本身的信息量,而是讨论描述事物的文字符号包含的信息量。先讨论比较简单的数字符号。

二进制数:二进制数只有2个符号:0和1。一位二进制数有2种可能性,其信息量是1比特。n位二进制数可记N=2^n个不相等的数,含有n比特信息,所以每位数字的信息量还是1。

十进制数:十进制数字有10个,每位数字的信息量是㏒(10)/ ㏒(2)=1/0.301=3.32。不难验证所有十进制数,每位数字的信息量都是3.32,例如3位数共1000个,信息量是㏒(1000)/ ㏒(2)=3*3.32。而十六进制的每位数字的信息量是4。

事情好像很简单,其实不然。试考虑还没有发明数字的远古人,他用刻画来记数,用刻n画的方法记数目n。10以内的数平均每个数要刻(1+10)/2=5.5画,每画的平均信息量是3.32/5.5=0.604,而100以内的数平均每个数(1+100)/2=50.5画,每画的平均信息量只有6.64/50. 5=0.132。因为古人刻的每一画是没有次序或位置的区别的,所以每一画的信息量变化很大,数值则很小。次序或位置非常重要,罗马字和我国古代的数码,也是短画,但要讲究位置组合,每画所含的信息量就大大提高了。注意,我们以后讨论的文字信号,都是有次序的。

这样,文字信号的信息量H是信号个数n的以2为底的对数: H=㏒(n)/ ㏒(2)。英文有 26个字母,每个字母的信息量H=㏒(26)/ ㏒(2)=4.700。汉字个数不定,算1000个时等于3*3.32=9.96,算作一万、十万时则分别为13.28、16.60。我们能随意增加大量一辈子也用不到的汉字,来无限地增加每个汉字的信息量?这当然不合理。原来信息量不能无条件地按符号的个数来计算,只有各符号的可能性一样,都等于1/n时才行。数字符号就满足这样的条件。事实上信息量应按符号的可能性(数学上叫概率大小)来计算,它是概率的负对数。对于二进制数,每个符号的概率都等于1/2,按负对数计算:-㏒(1/n)=-(㏒(1)- ㏒(n))=-(0-㏒(n))=㏒(n)。这就是我们前面使用的公式的来源。如果符号i的概率pi不等于1/n,则Hi=-㏒(pi)。因为各个符号的概率pi不相等,对于总体来说,平均信息量就是它们的加权平均H=-∑pi㏒(pi),这里累加符号∑表示对所有 i 进行累计。(以上式子除以㏒(2),就可化为以比特为单位了)。

2.  熵的定义

如果有一枚理想的硬币,其出现正面和反面的机会相等,则抛硬币事件的熵等于其能够达到的最大值。我们无法知道下一个硬币抛掷的结果是什么,因此每一次抛硬币都是不可预测的。因此,使用一枚正常硬币进行若干次抛掷,这个事件的熵是一比特,因为结果不外乎两个——正面或者反面,可以表示为0,
1
编码,而且两个结果彼此之间相互独立。若进行n独立实验,则熵为n,因为可以用长度为n比特流表示。[1]但是如果一枚硬币的两面完全相同,那个这个系列抛硬币事件的熵等于零,因为结果能被准确预测。现实世界里,我们收集到的数据的熵介于上面两种情况之间。

另一个稍微复杂的例子是假设一个随机变量X,取三种可能值,概率分别为,那么编码平均比特长度是:。其熵为3/2。

因此熵实际是对随机变量的比特量和顺次发生概率相乘再总和的数学期望

熵在信息论中的定义推导过程如下:

信源的不确定性:信源发出的消息不肯定性越大,收信者获取的信息量就越大。如果信源发送的消息是确切的,则对收信者来说没有任何价值(没有信息量)。衡量不确定性的方法就是考察信源X的概率空间。X包含的状态越多,状态Xi的概率pi越小,则不确定性越大,所含有的信息量越大。

不确定程度用H(X)表示,简称不确定度,
用概率的倒数的对数来度量不肯定程度。一般写成H(X) = log(1/p) = -log(p).

自信息量:一个事件(消息)本身所包含的信息量,由事件的不确定性决定的。

即随机事件Xi发生概率为P(xi),则随机事件的自信息量定义为:

表示事件Xi发生后能提供的信息量。事件不同,则他的信息量也不同,所以自信息量是一个随机变量。不能用来表征整个信源的不肯定性。可以用平均自信息量来表征整个信源的不肯定性。

定义信息量为概率的负对数,是很合理的。试考虑一个两种可能性的事物,仅当可能性相等时,不确定性最大,最后我们知道了某一可能性确实发生了,也得到最大的信息量。如果其中某一个可能性很大(另一个必然很小),不确定性就很小。如果可能性大到1,也就是必然要发生的,因为1的对数为0,我们从知道它的发生这件事得到的信息也为0。

(1)非负性

(2)随机性     是随机变量

(3)单调性      概率大自信息量小

(4)随机事件的不确定性在数量上等于它的自信息量。

(5)单位

以2为底,记作lb,单位比特(bit);

以e为底,记作ln,单位奈特(nat);

以10为底,记作lg,单位哈脱来(hat)。

信息熵:随机变量自信息量I(xi)的数学期望(平均自信息量),用H(X)表示,即为熵的定义:

即一个值域为{x1, ..., xn}的随机变量 X 的熵值 H 定义为:

其中,E 代表了期望函数,而 I(X) 是 X 的信息量(又称为信息本体)。I(X)
本身是个随机变量。如果 p 代表了 X 的机率质量函数(probability
mass function),则熵的公式可以表示为:

在这里 b 是对数所使用的,通常是
2, 自然常数 e,或是10。当b = 2,熵的单位是bit;当b = e,熵的单位是 nat;而当 b = 10,熵的单位是 dit

pi = 0时,对于一些i值,对应的被加数0 logb 0的值将会是0,这与极限一致。

3. 范例

如果有一个系统S内存在多个事件S = {E1,...,En},每个事件的机率分布
P = {p1, ..., pn},则每个事件本身的信息量为:

(对数以2为底,单位是比特(bit))

(对数以为底,单位是纳特/nats)

如英语有26个字母,假如每个字母在文章中出现次数平均的话,每个字母的讯息量为:

而汉字常用的有2500个,假如每个汉字在文章中出现次数平均的话,每个汉字的信息量为:

实际上每个字母和每个汉字在文章中出现的次数并不平均,比方说较少见字母(如z)和罕用汉字就具有相对高的信息量。但上述计算提供了以下概念:使用书写单元越多的文字,每个单元所包含的讯息量越大。

熵是整个系统的平均消息量,即:

这个平均消息量就是消息熵。因为和热力学中描述热力学熵的玻耳兹曼公式形式一样,所以也称为“熵”。

英语文本数据流的熵比较低,因为英语很容易读懂,也就是说很容易被预测。即便我们不知道下一段英语文字是什么内容,但是我们能很容易地预测,比如,字母e总是比字母z多,或者qu字母组合的可能性总是超过q与任何其它字母的组合。如果未经压缩,一段英文文本的每个字母需要8个比特来编码,但是实际上英文文本的熵大概只有4.7比特。如果压缩是无损的,即通过解压缩可以百分之百地恢复初始的消息内容,那么压缩后的消息携带的信息和未压缩的原始消息是一样的多。而压缩后的消息可以通过较少的比特传递,因此压缩消息的每个比特能携带更多的信息,也就是说压缩信息的熵更加高。熵更高意味着比较难于预测压缩消息携带的信息,原因在于压缩消息里面没有冗余,即每个比特的消息携带了一个比特的信息。香农的信息理论揭示了,任何无损压缩技术不可能让一比特的消息携带超过一比特的信息。消息的熵乘以消息的长度决定了消息可以携带多少信息。

如果两个系统具有同样大的消息量,如一篇用不同文字写的同一文章,由于是所有元素消息量的加和,那么中文文章应用的汉字就比英文文章使用的字母要少。所以汉字印刷的文章要比其他应用总体数量少的字母印刷的文章要短。即使一个汉字占用两个字母的空间,汉字印刷的文章也要比英文字母印刷的用纸少。

4.  熵的特性

1、熵均大于等于零,即,

2、设N是系统S内的事件总数,则熵。当且仅当p1=p2=...=pn时,等号成立,此时系统S的熵最大。

3、联合熵,当且仅当X,Y在统计学上相互独立时等号成立。

4、条件熵,当且仅当X,Y在统计学上相互独立时等号成立。

5.  抛硬币的熵

抛硬币的熵H(X)(即期望自信息),以比特度量,与之相对的是硬币的公正度
Pr(X=1).

注意图的最大值取决于分布;在这里,要传达一个公正的抛硬币结果至多需要1比特,但要传达一个公正的抛骰子结果至多需要log2(6)比特。

(网上内容总结)

信息论的熵

时间: 2024-08-26 22:33:40

信息论的熵的相关文章

关于信息论中熵的定义与含义:

信息熵: 1. 热力学中的热熵是表示分子状态混乱程度的物理量.香农用信息熵的概念来描述信源的不确定度. 2. :两个独立符号所产生的不确定性应等于各自不确定性之和 3. 在信源中,考虑的不是某一单个符号发生的不确定性,而是要考虑这个信源所有可能发生情况的平均不确定性. 对于当个符号,它的概率为p时,用这个公式衡量它的不确定性: 而信源的平均不确定性,称为信息熵,用下面的公式表示: 注意:1. 当式中的对数的底为2时,信息熵的单位为比特.它底数为其它时,它对应的单位也不一样. 2. 信息熵是信息论

信息论_熵

信息论主要是对信号所含信息的多少进行量化,其基本思想是一个不太可能发生的事情要比一个可能发生的事情提供更多的信息. 度量信息的集中常用指标有信息熵.条件熵.互信息.交叉熵. 信息熵 信息熵(entropy)简称熵,是对随机变量不确定性的度量.定义为: H(x)=∑pi*log2(pi) 用以下代码来实现对0-1分布变量概率与其信息熵的关系: import matplotlib.pyplot as plt # %matplotlib inline 只有Jupyter需要加这一行,其余常用edito

深度学习中交叉熵和KL散度和最大似然估计之间的关系

机器学习的面试题中经常会被问到交叉熵(cross entropy)和最大似然估计(MLE)或者KL散度有什么关系,查了一些资料发现优化这3个东西其实是等价的. 熵和交叉熵 提到交叉熵就需要了解下信息论中熵的定义.信息论认为: 确定的事件没有信息,随机事件包含最多的信息. 事件信息的定义为:\(I(x)=-log(P(x))\):而熵就是描述信息量:\(H(x)=E_{x\sim P}[I(x)]\),也就是\(H(x)=E_{x\sim P}[-log(P(x))]=-\Sigma_xP(x)l

[转] 理解交叉熵在损失函数中的意义

转自:https://blog.csdn.net/tsyccnh/article/details/79163834 关于交叉熵在loss函数中使用的理解交叉熵(cross entropy)是深度学习中常用的一个概念,一般用来求目标与预测值之间的差距.以前做一些分类问题的时候,没有过多的注意,直接调用现成的库,用起来也比较方便.最近开始研究起对抗生成网络(GANs),用到了交叉熵,发现自己对交叉熵的理解有些模糊,不够深入.遂花了几天的时间从头梳理了一下相关知识点,才算透彻的理解了,特地记录下来,以

决策树算法原理

转载于:http://www.cnblogs.com/pinard/p/6050306.html (楼主总结的很好,就拿来主义了,不顾以后还是多像楼主学习) 决策树算法在机器学习中算是很经典的一个算法系列了.它既可以作为分类算法,也可以作为回归算法,同时也特别适合集成学习比如随机森林.本文就对决策树算法原理做一个总结,上篇对ID3, C4.5的算法思想做了总结,下篇重点对CART算法做一个详细的介绍.选择CART做重点介绍的原因是scikit-learn使用了优化版的CART算法作为其决策树算法

十三种基于直方图的图像全局二值化算法原理、实现、代码及效果(转)

十三种基于直方图的图像全局二值化算法原理.实现.代码及效果(转) http://www.cnblogs.com/carekee/articles/3643394.html 图像二值化的目的是最大限度的将图象中感兴趣的部分保留下来,在很多情况下,也是进行图像分析.特征提取与模式识别之前的必要的图像预处理过程.这个看似简单的问题,在过去的四十年里受到国内外学者的广泛关注,产生了数以百计的阈值选取方法,但如同其他图像分割算法一样,没有一个现有方法对各种各样的图像都能得到令人满意的结果. 在这些庞大的分

灰度图像阈值化分割常见方法总结及VC实现

转载地址:http://blog.csdn.net/likezhaobin/article/details/6915755 在图像处理领域,二值图像运算量小,并且能够体现图像的关键特征,因此被广泛使用.将灰度图像变为二值图像的常用方法是选定阈值,然后将待处理图像的每个像素点进行单点处理,即将其灰度值与所设置的门限进行比对,从而得到二值化的黑白图.这样一种方式因为其直观性以及易于实现,已经在图像分割领域处于中心地位.本文主要对最近一段时间作者所学习的阈值化图像分割算法进行总结,全文描述了作者对每种

《OpenCV:灰度图像阈值化分割常见方法总结及VC代码》

支持原创,拿来收藏!转载地址:http://blog.csdn.net/likezhaobin/article/details/6915755?userName=u014395105&userInfo=aWOfy4XjkeuESVqMgVdrnPewKx6gaD2TZ6xUFF%2FXs%2FeZjmZKRHLyhzVPli3izF4JpSQuVNfcdFRe6pvuXl6VvRJ%2FSmjVpClq8XgXbwl56GUA19Luch91NWA57umNAidF94p6X1kqBpQ9l4%

决策树算法(二)

在决策树算法原理(上)这篇里,我们讲到了决策树里ID3算法,和ID3算法的改进版C4.5算法.对于C4.5算法,我们也提到了它的不足,比如模型是用较为复杂的熵来度量,使用了相对较为复杂的多叉树,只能处理分类不能处理回归等.对于这些问题, CART算法大部分做了改进.CART算法也就是我们下面的重点了.由于CART算法可以做回归,也可以做分类,我们分别加以介绍,先从CART分类树算法开始,重点比较和C4.5算法的不同点.接着介绍CART回归树算法,重点介绍和CART分类树的不同点.然后我们讨论CA