熵 (信息论)

维基百科,自由的百科全书
跳转至: 导航搜索

信息论中,被用來衡量一個隨機變數出現的期望值。它代表了在被接收之前,訊號傳輸過程中損失的資訊量,又被稱為信息熵。信息熵也称信源熵平均自信息量

在1948年,克劳德·艾尔伍德·香农將熱力學的熵,引入到信息论,因此它又被稱為香农熵

简介[编辑]

熵的概念最早起源于物理学,用于度量一个热力学系统的无序程度。在信息论里面,熵是对不确定性的测量。但是在信息世界,熵越高,则能传输越多的信息,熵越低,则意味着传输的信息越少。

英语文本数据流的熵比较低,因为英语很容易读懂,也就是说很容易被预测。即便我们不知道下一段英语文字是什么内容,但是我们能很容易地预测,比如,字母e总是比字母z多,或者qu字母组合的可能性总是超过q与任何其它字母的组合。如果未经压缩,一段英文文本的每个字母需要8个比特来编码,但是实际上英文文本的熵大概只有4.7比特。

如果压缩是无损的,即通过解压缩可以百分之百地恢复初始的消息内容,那么压缩后的消息携带的信息和未压缩的原始消息是一样的多。而压缩后的消息可以通过较少的比特传递,因此压缩消息的每个比特能携带更多的信息,也就是说压缩信息的熵更加高。熵更高意味着比较难于预测压缩消息携带的信息,原因在于压缩消息里面没有冗余,即每个比特的消息携带了一个比特的信息。香农的信息理论揭示了,任何无损压缩技术不可能让一比特的消息携带超过一比特的信息。消息的熵乘以消息的长度决定了消息可以携带多少信息。

熵的计算[编辑]

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

另一个稍微复杂的例子是假设一个随机变量X,取三种可能值\begin{smallmatrix} x_1, x_2, x_3 \end{smallmatrix}
,概率分别为\begin{smallmatrix} \frac{1}{2}, \frac{1}{4}, \frac{1}{4} \end{smallmatrix}
,那么编码平均比特长度是:\begin{smallmatrix} \frac{1}{2} \times 1 + \frac{1}{4} \times 2 + \frac{1}{4} \times 2 = \frac{3}{2} \end{smallmatrix}
。其熵为3/2。

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

定义[编辑]

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

H(X)  =  \operatorname{E}(I(X))

其中,E 代表了期望函數,而 I(X) 是 X 的資訊量(又稱為資訊本體)。I(X) 本身是個隨機變數。如果 p 代表了 X機率質量函數(probability mass function),則熵的公式可以表示為:

H(X) = \sum_{i=1}^n {p(x_i)\,I(x_i)} = -\sum_{i=1}^n {p(x_i) \log_b p(x_i)}

在這裏 b對數所使用的,通常是 2, 自然常數 e,或是10。當b = 2,熵的單位是bit;當b = e,熵的單位是 nat;而當 b = 10,熵的單位是 dit

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

\lim_{p\to0+}p\log p = 0.

範例[编辑]

抛硬币的熵H(X)(即期望自信息),以位元度量,與之相對的是硬幣的公正度 Pr(X=1).

注意图的最大值取决於分布;在這裡,要傳達一個公正的拋硬幣結果至多需要1位元,但要傳達一個公正的拋骰子結果至多需要log2(6)位元。

如果有一个系统S内存在多个事件S = {E1,...,En},每个事件的機率分布 P = {p1, ..., pn},则每个事件本身的訊息(資訊本體)为:

I_e = -\log_2 {p_i} (对数以2为底,单位是位元(bit))
I_e = -\ln {p_i} (对数以e为底,单位是纳特/nats)

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

I_e = -\log_2 {1\over 26} = 4.7

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

I_e = -\log_2 {1\over 2500} = 11.3

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

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

H_s = \sum_{i=1}^n p_i I_e = -\sum_{i=1}^n p_i \log_2 p_i

因为和热力学中描述热力学熵玻尔兹曼公式形式一样,所以也称为“熵”。

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

熵的特性[编辑]

  1. 熵均大于等于零,即,H_s \ge 0
  2. 设N是系统S内的事件总数,则熵H_s \le log_2N。当且仅当p1 = p2 = .... = pn时,等号成立,此时系统S的熵最大。
  3. 联合熵H(X,Y) \le H(X) + H(Y),当且仅当X,Y在统计学上相互独立时等号成立。
  4. 条件熵H(X|Y) = H(X,Y) - H(Y) \le H(X),当且仅当X、Y在统计学上相互独立时等号成立。

和热力学熵的联系[编辑]

物理学家和化学家对一个系统自发地从初始状态向前演进过程中,遵循热力学第二定律而发生的熵的变化更感兴趣。在传统热力学中,熵被定义为对系统的宏观测定,并没有涉及概率分布,而概率分布是信息熵的核心定义。

根据Jaynes(1957)的观点,热力学熵可以被视为香农信息理论的一个应用:热力学熵被定义为与要进一步确定系统的微观状态所需要的更多香农信息的量成比例。比如,系统温度的上升提高了系统的热力学熵,这增加了系统可能存在的微观状态的数量,也意味着需要更多的信息来描述对系统的完整状态。

Maxwell在以他的名字命名的思想实验中认为,如果存在一个小妖精知道每个分子的状态信息(热,或者冷),就能够降低系统的热力学熵。Landauer和他的同事则反驳说,让小妖精行使职责本身——即便只是了解和储存每个分子最初的香农信息——就会给系统带来热力学熵的增加,因此总的来说,系统的熵的总量没有减少。这就解决了Maxwell思想实验引发的悖论。Landauer法则能够解释现代计算机在处理大量信息时,必须解决散热问题。

参见[编辑]

参考[编辑]

  1. ^ "Cryptography Theory and Practice" (英)Stinson. 2nd edition. 2.4节 “熵”。