信息量与熵

2024-01-29 21:32
文章标签 信息量

本文主要是介绍信息量与熵,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

世界杯决赛的两支球队中,哪支球队获得了冠军?在对球队实力没有任何了解的情况下,每支球队夺冠的概率都是1/2,所以谁获得冠军这条信息的信息量是 - log2 1/2 = 1 bit。如果信息是四强中的球队谁获得了冠军,它的信息量是 - log2 1/4 = 2 bit。

其实这正好对应了计算机对数字的表示,如果用二进制表示,每一位出现0和1的概率都是1/2,所以每一位的信息量是1bit。如果用十六进制表示,每一位出现任意一个符号的概率是1/16,所以每一位能表示 - log2 1/16 = 4 bit。所以1位十六进制的信息量,和4位二进制信息量是相同的。

这样就比较好理解另一个经典的例子,英文有26个字母,假设每个字母出现的概率是一样的,每个字母的信息量就是 - log2 1/26 = 4.7;常用的汉字有2500个,每个汉字的信息量是 - log2 1/2500 = 11.3。所以在信息量相同的情况下,使用的汉字要比英文字母要少——这其实就是十六进制和二进制的区别,在这个例子中,apple成了5位26进制的数值,信息量4.7 * 5 = 23.5;而苹果成为2位2500进制的数值,信息量11.3 * 2 = 22.6。虽然表示的方式不同,但信息量差不多(这是一个很巧合的例子,仅用于说明信息量的含义,大多数词语都不会这么接近)。

在实际的情况中,每种可能情况出现的概率并不是相同的,所以熵(entropy)就用来衡量整个系统的平均信息量,其计算公式如下

信息熵与分类算法 - 高飞航 - 高飞航的博客

熵是平均信息量,也可以理解为不确定性。例如进行决赛的巴西和南非,假设根据经验判断,巴西夺冠的几率是80%,南非夺冠的几率是20%,则谁能获得冠军的信息量就变为 - 0.8 * log2 0.8 - 0.2 * log2 0.2 = 0.257 + 0.464 = 0.721,小于1 bit了。经验减少了判断所需的信息量,消除了不确定性。

而且通过计算可以发现,巴西夺冠的几率越高,计算出的熵就越小,即越是确定的情况,不确定性越小,信息量越少。如果巴西100%夺冠,那么熵是0,相当于没有任何信息。当两队几率都是50%最难判断,所熵达到最大值1。其实之前的  - log2 1/2 = 1 bit 是简化了的计算过程,其结果也是通过熵的公式来计算的  - 0.5 * log2 0.5 - 0.5 * log2 0.5 = 1 bit,计算信息量要综合考虑每种结果的可能性。

另一个会迷惑的问题是熵会大于1吗?答案当然是肯定的,刚刚计算的最大值为1bit,是因为最终的结果只有两种情况。在有四支球队的时候,其最大值就是 - 0.25 * log2 0.25  - 0.25 * log2 0.25  - 0.25 * log2 0.25  - 0.25 * log2 0.25 = 2 bit,当四支球队夺冠概率不等的时候,熵会小于2 bit。

数据挖掘分类问题中构建决策树的算法ID3和C4.5,就是对熵的一个典型的应用。
以经典的根据天气判断是否打高尔夫球的例子来说明

@relation weather.symbolic@attribute outlook {sunny, overcast, rainy} @attribute temperature {hot, mild, cool} @attribute humidity {high, normal} @attribute windy {TRUE, FALSE} @attribute play {yes, no}@data sunny,hot,high,FALSE,no sunny,hot,high,TRUE,no overcast,hot,high,FALSE,yes rainy,mild,high,FALSE,yes rainy,cool,normal,FALSE,yes rainy,cool,normal,TRUE,no overcast,cool,normal,TRUE,yes sunny,mild,high,FALSE,no sunny,cool,normal,FALSE,yes rainy,mild,normal,FALSE,yes sunny,mild,normal,TRUE,yes overcast,mild,high,TRUE,yes overcast,hot,normal,FALSE,yes rainy,mild,high,TRUE,no

因为最终的结果只有yes和no两种,判断是否打高尔夫球所需的信息量(熵、不确定性)是1 bit。构建决策树的过程就是通过各种天气特征,来消除不确定性(使熵减少)。

在选择分裂属性之前会计算一个初始的熵,但这个值却不是刚才提到的1。因为在只知道Class Label的情况下,是有一些经验上的信息的。如训练集中,有9个yes和5个no,这就好比我们知道在两队的交手记录中巴西获胜过几次,所以由此可以推算出现yes的概率是9/14,出现no的概率是5/14。所以初始的熵为 H-init =  - 9/14 * log2 9/14 - 5/14 * log2 5/14 = 0.94。

属性是如何使熵减少的呢?假设我们选取的是outlook,则通过这个属性可以将训练集划分成3个集合

sunny,hot,high,FALSE,no sunny,hot,high,TRUE,no sunny,mild,high,FALSE,no sunny,cool,normal,FALSE,yes sunny,mild,normal,TRUE,yesovercast,hot,high,FALSE,yes overcast,cool,normal,TRUE,yes overcast,mild,high,TRUE,yes overcast,hot,normal,FALSE,yesrainy,mild,high,FALSE,yes rainy,cool,normal,FALSE,yes rainy,cool,normal,TRUE,no rainy,mild,normal,FALSE,yes rainy,mild,high,TRUE,no

某些子集在分割后变得更加纯净了,如当 outlook = overcast 的时候,全部为yes,该子集的熵为0,使得总体的熵(各个子集熵的平均值)减少。
H-sunny = - 0.4 * log2 0.4 - 0.6 * log2 0.6 = 0.971
H-overcast = - 1 * log2 1 - 0 = 0
H-rainy =  - 0.6 * log2 0.6  - 0.4 * log2 0.4 = 0.971
H-average = 0.971 * 5 / 14 + 0 * 4 / 14 + 0.971 * 5 / 14 = 0.694

初始熵与分割后的总体熵的差值,就是信息增益 InfoGain = H-init - H-average = 0.94 - 0.694 = 0.246
相当于 获得了有用的信息,使判断出结果所需的信息量减少了。所以ID3算法在每次分割时,都选取信息增益最大的属性,这样使用最少的分支判断就可以得到最终的结果。

熵表示不确定性,可以衡量混乱程度或纯净度,因此也用作分类或聚类结果的评价标准。类似地,在得到了所划分的n个集合后,分别计算每个集合的熵,公式中的n为集合中类别的个数,pi为第i个类别在该集合中出现的概率。如集合中有4个元素,分别属于4个类别,那么这个集合的熵就是2。之后计算各个集合熵的加权平均值,即是整个划分结果的熵。同理,熵越低表示划分得越准确。

关于决策树算法的详细介绍,推荐: http://www.cnblogs.com/leoo2sk/archive/2010/09/19/1831151.html 
原文地址http://gaofeihang.blog.163.com/blog/static/8450828520128139648199/

这篇关于信息量与熵的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/658230

相关文章

Linux屏中信息量大,一屏或几屏显示不全怎么办

Linux屏中信息量大,一屏或几屏显示不全 两种方法 1.加个参数 |more 例如:ls -l |more 这样敲完命令后,屏幕信息会停留在第一页上,再敲回车后,又多显示一行。 但如果,信息太多敲回车太麻烦,可以采用第二种方法。 2.写入一个文件中 例如:ls -l > a.txt 这样再次编辑a.txt就可以查看信息了。

信息量,信息熵,纯度

如果看不懂博文,请阅读《信息论基础》一看便懂。 链接:https://pan.baidu.com/s/1T7rS4owM2nU_DP6rthqUPA  提取码:zu9s  (1)消息 消息是实体,信息是抽象的。可以从消息中获取信息。消息的表现形式可以是:语言,符号,文字,图片 (2)信息 信息是抽象的,消息是信息的载体。 举例:如果把某个人说的话看成是消息的话,那他话中传递的意思就是信

通信系列:通信中如何度量消息中所包含的信息量?如何评估通信系统的性能?

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 本节目录 一、通信中如何度量消息中所包含的信息量?二、等概率离散消息的度量三、信息源的熵Entropy四、如何评估通信系统的性能?五、通信系统的性能指标用什么描述?1、有效性2、

2016年“微信之父”张小龙首次公开演讲透露的信息量大

2016年1月11日,在微信即将迎来5岁生日的时候,沉默多年、被称为“微信之父”的张小龙再次站到公众面前,发表了首次公开演讲,详细阐述了微信的四个基本理念以及未来微信要做的很多事情。语速不快,时间很长,背后传递的信号很明显。 在他看来,对于现在的微信来说,最重要的不是多做一些事情,而是挡掉很多事情,用资源置换的方式跟微信合作基本是死路一条;微信也不会向使用者提供特权,对于诱导分享的行

信息量与信息熵的概念

信息的大小跟随机事件的概率有关。越小概率的事情发生了产生的信息量越大,如湖南产生的地震了;越大概率的事情发生了产生的信息量越小,如太阳从东边升起来了(肯定发生嘛,没什么信息量)。 原文: https://zhuanlan.zhihu.com/p/26486223

神经网络数学基础-香浓信息量、信息熵、交叉熵、相对熵(KL散度)

香浓信息量 这里以连续随机变量的情况为例。设 为随机变量X的概率分布,即 为随机变量 在 处的概率密度函数值,随机变量 在 处的香农信息量定义为: 这时香农信息量的单位为比特,香农信息量用于刻画消除随机变量在处的不确定性所需的信息量的大小。 如果非连续型随机变量,则为某一具体随机事件的概率。 为什么是这么一个表达式呢?想具体了解的可以参考如下的讨论: 知乎-香农的信息论究

【绪论】数字通信和模拟通信,信息量,信道

信息量 信息量与消息出现的概率有关,消息越不可能出现,信息量越大 I = l o g a 1 P ( x ) = − l o g a P ( x ) I=log_a\frac{1}{P(x)}=-log_aP(x) I=loga​P(x)1​=−loga​P(x) 信息的相加性:若干个互相独立事件的信息量等于各独立事件的信息量之和 底数 a a a通常取2,则信息量的单位为比特(b) 当离

设备指纹——语音频谱信息量

简介         同一段语音用不同设备录音后的手机语音特性是不同的,因此可以从录音后的语音入手来提取相应的特征进行设备检测。在这里用了一种基于语谱图的方法进行检测。本文主要讲提取语音频谱的信息量,后面的识别过程就是用提取的信息量作为特征使用SVM进行分类,本文不再详细介绍。举个例子,下图是同一段语音用不同手机录下后的语谱图,可已看出有很大测差别。语谱图在matlab中使用以下代码可以查看,其

华为徐直军第一次非主场演讲,信息量很大

10月15日,在2017中国管理·全球论坛上,华为轮值CEO徐直军先生发表了主题演讲——《应对快速变化的世界》。 据说,这是徐直军总第一次在非华为主场(别人家的地盘、别人家的会议)做主题演讲。在我的印象里,华为轮值CEO级别的高管,的确是很少在这类会议上出镜的,这不像华为自家的HC大会或者∑CO大会,那是地地道道的主场,也不像巴展或者Cebit,即便远隔重洋,华为也会把它打造得和主场一般。

c++ 结构体_有机化学数同分异构体(信息量有点大zz)

知识储备: 不饱和度Ω 1.不饱和度Ω的计算: 烃类或者烃的含氧衍生物(CxHy)(CxHyOz) Ω=x+1-y/2 含N的有机物将N替换为CH (CxHyNz)→(Cx+z Hy+z) 含有卤族元素的有机物,将-X替换为H (CxHyXz)→(CxHy+z) 立体封闭有机物分子(多面体或笼状结构) 不饱和度的计算,其成环的不饱和度比面数少数1 EXERCISE: C2H2 Ω=2+1