作为20世纪重要的科学成就之一,信息论是cs专业的必修课。但是当年我打开教科书,就迷失在各种晦涩的公式之中。本文我将梳理对于信息论中“自信息”(self-information)和信息熵(entropy)概念的理解。
- 直觉中的信息
我们的日常生活随时随地都在跟“信息”打交道,就好像在跟“长度”打交道一样。长度及其依附的三维空间是如此直观和平常,以至于小学生也可以快速理解“什么是长度”和“什么是空间”。简单来说,在欧式空间里面,从点a出发直线行走到另一个点b,我们能感知到ab两点之间的长度。那么信息呢?同样的,从昨天到今天,或者从一个城市旅行到另一个城市,我们遇到新的事物和新的见闻,也能感知到接收新的信息。但区别在于,对于长度,我们有很直观的方式和通用的国际单位(meter)去度量,对于信息,我们只能说感知到,却缺少一个工具把它量化,直到克劳德香农和信息论出现。
- 自信息 self-information
香农基于概率 p p p 定义了自信息 I = − l o g ( p ( x ) ) I = -log(p(x)) I=−log(p(x)),直观的理解是,概率越小,信息越多,但要注意概率来自于有明确定义的随机变量。例如,现在有一个随机变量 x x x 定义为“中国男子国家足球队(主力)和巴西男子国家足球队(主力)的比赛结果”,它的样本空间中有三个结果(outcome) a: 中国队赢,概率0.1%; b:打平,概率1%; c: 巴西队赢,概率 98.9%;如果巴西队获胜,我们会觉得这是情理之中,这个事件的信息量少。如果中国队获胜,那么绝对是意料之外的惊喜,这个事件信息量大。香农告诉我们,情理之中的事情信息量少,如果你事先确定它一定发生 p = 100 % p = 100\% p=100% ,那么它没有任何信息量。在这个模型里面,赛场是信息的发送方(sender),而知晓比赛结果的人是信息的接收方(receiver)。当然你可以把比赛结果告诉另一个人,这是你自己变成了sender,但不论哪种比赛结果,你送给另一个人的信息量跟赛场送给你的信息量是一样的。当然,这里面有一个简单的假设,发送方和接收方对于比赛结果的概率的认知是保持一致的。
- 信息熵 information entropy
当我们谈论一个系统的信息,通常涉及两个层面,系统可能传递的信息和系统已经传递出来的信息。就好比概率分布和基于分布的取样。如上的例子,一场具体的比赛结束,会向我们传递出符合 I = − l o g ( p ( x ) ) I =