本章的任务是说明上一章介绍的“复杂程度”并不是科学领域的孤岛。“信息”以及物理课堂上神秘的“熵”都是它的化身。
前面七章是我们做的概念铺垫,其目的就是把“信息”、“熵”这些重要概念放到一个更简单、更自然也更广泛的基础上。如果你把信息、熵比做现代科学领域中的“神”(“信息”神是神通广大但是被物理学拒之门外,“熵”神是高不可攀但是被囚于热力学中),那么我们就修了个新庙并请“复杂程度”为神,然后补充说
“信息”、“熵”都是先辈们对复杂程度在不同场合的称呼。
大家都说
20
世纪进入了信息社会。什么是信息?控制论创始人维纳说信息不是物质也不是能量。
信息既然不是物质,所以物理学中没有它立锥之地。如此重要的信息科学竟然在物理学中没有合适的身份,看来我们的科学知识框架要修正!
信息既然不是物质,唯物论者就想把它推翻可又舍不得。唯物论在信息时代不知如何就“信息”发言!
大家都说不知熵为何物,一位哲学家说不懂得熵与不知道莎士比亚一样糟糕。爱因斯坦说熵原理是宇宙的第一法则。这些说教岂不是要我们把它当作宗教来迷信?
熵究竟是一个用途非常窄的概念,还是存于万物之中?
复杂程度概念的出现理顺了这些关系。广义集合分析客观事物,坚持了唯物论。广义集合的复杂程度是描述客观事物的物理量。研究复杂程度绝对不是唯心论。
本章说明看似非物质的信息,实际上与客观事物的复杂程度是对应的。理解了这种对应不仅扩大了复杂程度的应用领域,也为唯物论者正确理解信息论开通了思路。有了这种认识,唯物论者不再以怀疑的目光看待信息论,而是有了正确吸纳它进入唯物论并且放在准确位置的依据。
本章还要说明神秘的热力学熵所对应的是微观尺度的物质运动状态的复杂程度。由于在物质组成了细胞之后又提出了细胞的复杂程度问题、当细胞组成了器官又提出了器官的复杂程度;顺此,当器官组成了个体进而组成群体、社区、国家等等等等我们还得到了新层次上的复杂程度。我们建议你用复杂程度概念描述这些新问题而把物理学过去称为的熵看成是复杂程度的别名。
用复杂程度概念统一信息和熵概念也为非物质的“信息”进入物理领地理顺了思路。
§
8.2
不确定性
--
信息熵公式
20
世纪
40
年代末随着通信技术的发展,人们需要讯号(电报讯号是典型)传输的理论模型。信息论创始人
申农
(
C.E.Shannon
)的入手点是先研究收到一个讯号之前如何科学地度量该结局的不确定性。如何入手?他从众多的理论工具中正确地找到概率论。在概率论中他恰当地给出了一个公式。这个公式计算出来的值就是
不确定程度
,而计算中利用的数据则是不同讯号的出现概率。有了不确定性程度以后他又巧妙地引出了信息的度量问题。他的理论被称为关于通信的数学理论。科学测度
不确定性
在这个理论中居核心地位。我们的分析也从这里开始。
信息熵是
申农
对不确定性的科学称谓。
8.2.1
等概率情况下抽样结局的不确定性
通信的目的不是为了得到物质材料也不是能量而是为了得到消息。这也说明收讯人在事先对传过来的内容并
不确知
。申农科学地提出了度量这个不确知程度的大小问题。并且找到了表示它的科学方法。
掷一枚硬币、一个骰子或者通信中收到一个讯号,其结局都有不确定性。它们的不确定性相同吗?并不,掷硬币的结局仅有正反面两个,其不确定性比可能有
6
个结局(
1
、
2
、
3
、
4
、
5
、
6
点)的掷骰子要小。以
H
表示做一次抽样(对应于通讯时收到一个讯号)的不确定性,可以初步地说
H
与实验结局的
可能个数
有关。或者说不确定性是结局的个数的函数。写成公式就是
H=f(k)
如果要求“掷一次硬币同时还掷一次骰子”的结局的不确定性是分别掷一次硬币与掷一次骰子的不确定性的和,即
H(
掷一次硬币
,
还掷一次骰子
)=
H
(
掷一次硬币
)+
H
(
掷一次骰子
)
还言之,我们在要求:
f(12)=f(2)+f(6)
再者,某实验如果结局是唯一的,它就没有不确定性了。这时规定其不确定性为零,即
f(1)=0
数学的分析表明并不是任何函数都具有要求的性质,而
仅有
对数函数满足上面提的要求。所以前面的未知函数
f
仅可能是对数函数
log
。即不确定性
H
与抽样实验的可能结局的个数
k
有如下关系
H=
log
k
(
8.1
)
对于前面的例子它显然是对的:
H
(
掷一次硬币
,
还掷一次骰子
)=log(12)=log(2)+log(6)=
H
(
掷一次硬币
)+
H
(
掷一次骰子
)
,
而且
log1=0
。
不确定性公式(
8.1
)在抽样实验各个结局的出现概率(机会)都相同的条件下是正确的。
不确定性
H
的值既然与对数有关,它的
计量单位
自然也与对数以什么为底有关。这与计算复杂程度的单位问题相同。实际上正是信息论首先提出了当对数以
2
为底时得到的不确定性称为
Bit
(比特)的主张。由于
log
2
2=1Bit
,有两个等可能性结局的抽样实验的结局的不确定性就恰好是
1
比特。这对应于掷一枚硬币,也对应于通信过程中讯号仅有两个等可能结局,例如高电位和低电位(或者
1
和
0
)的情况。由于它比以
10
为底的对数表示不确定性在通信和计算机界更好用,所以被计算机界广泛使用。今天“比特”已经成了信息的代名词。我们在复杂程度中介绍的哈特利(
10
为底对数)、纳特(
e
为底对数)都可以用于表示不确定性的大小,仅是应用面比较小而已。
8.2.2
信息熵公式
掷骰子时各种结局出现的机会(概率)都相同,所以用公式
(
8.1
)计算其不确定性是恰当的。但在通信中传输中文或者英文时并不是每个字(符)的出现机会都相同。例如“的”字在中文中出现的机会比“齿”字就高的多。在其他的抽样实验也会出现各个概率不相同的情况。如果各种结局
x
i
(讯号)的出现概率
p
i
是如下关系,
公式中
p
i
就是
x
i
的出现概率,
k
表示不同的讯号一共有
k
个。计算时如果概率的值
p
i
是零,规定
p
i
log
p
i
的值也是零(数学上的极限处理也是这个结果)。
由于申农接受数学家冯
.
诺曼的建议把不确定性称为熵,所以它也被称为熵公式(又由于它是信息论中的熵所以与热力学的熵无关,我国就称它为信息熵公式)。
只要你事先知道每个结局的出现概率,这个公式也可以用于一切随机抽样实验中。对于掷骰子的实验,由于仅有
6
个不同的结局(
k=6
),而且每个结局的出现概率都是
1/6
。所以一次实验的结局的不确定程度
H
为
H=
-(1/6)log
2
(1/6)-(1/6)log
2
(1/6)-(1/6)log
2
(1/6)-(1/6)log
2
(1/6)-(1/6)log
2
(1/6)-(1/6)log
2
(1/6)
H=-
log
2
(1/6)=log
2
6=2.58
比特
利用公式(
8.1
)也可以计算出它的不确定程度是
log
2
6
。实际上让各个概率
p
的值相等,带入公式
(
8.2
)
它会退化为公式
(
8.1
)
。
如果通讯时规定仅可以传英文字母和空格,而且已经调查了英文文献中每个字符的出现概率符合下面的表,就可以用公式
(
8.2
)
计算出每收到一个英文讯号消除的不确定程度
H
是
4.0651
比特
(
计算和表中数据取自人民邮电出版社、梁传甲编写的《信息论入门》
34
页,
1988
年版
)
。
表(
8. 1
)英文文献中不同英文字符的出现概率(机会)
对于中文中每个字符出现的概率我国也有大量的统计数据出版。中文有
6000
多常用字,分析显示每个中文字的不确定程度高于
8
个比特。在电脑中
8
个比特是一个字节,所以中文用一个字节是表示不了的。这就是大家知道的电脑中用两个字节表示一个中国汉字的原因。
关于不确定程度公式的更多的计算例子大家可以参考信息论的书籍,我们也会结合问题给出例子。
8.2.3
连续变量时的信息熵公式
前面讨论的信息熵公式是针对抽样结局是离散变量情况的。对于变量是连续变量的情况,也有类似的如下公式
(
8.3
)
x
泛指连续的随机变量,至于积分限,我们一般设变量
x
从负无穷大到正无穷大。
f(x)
是变量
x
的概率密度分布函数,即
x
每增加单位值时,对应的概率的增加值。对数写成
ln
是照顾到积分时数学处理上的方便。
这个连续变量的信息熵公式有类似于连续变量时复杂程度公式中出现的问题。这些都在
第九章
中说明。这里不再多述。在使用时
f(x)
的值显然与
x
的单位有关。这必然影响信息熵的值。我们说如果你希望得到有绝对意义下的信息熵的值,
x
就应当以该变量在有物理意义的前提下的最小自然(如原子个数)单位为单位。如果仅是取个相对意义下的信息熵值,取个适当的单位并且事先说明就可以了。注意单位取的过大会时信息熵变成了负值。这应当避免。
如果连续的变量
x
遵守著名的高斯分布(正态分布),即
x
的概率密度分布满足