熵与信息量

本文主要结合公式和定义解释了信息熵(Entropy)和信息量(Quantities of information)的含义和联系.

背景

信息熵是由信息论之父,克劳德·艾尔伍德·香农(Claude Elwood Shannon)于 1948 年发表的论文《通信的数学理论》(A Mathematical Theory of Communication)中提出.

熵这个词是香农从热力学中借用的:热力学中的热熵是表示分子状态的混乱程度的物理量,香农则使用信息熵来描述信源的不确定度.

信息熵的提出解决了对信息的量化度量问题.(应注意,信息量不等同于信息熵)

定义

(Entropy):对于给定的离散随机变量 \(X\),以可能性 \(P(x_1), \cdots, P(x_n)\) 取值为 \(x_1, \cdots, x_n\),则 \(X\) 的熵为:

\[ H(X) = -\sum_{i=1}^nP(x_i)\log_2 P(x_i) \]

上述定义可以看出,熵是对于随机变量而言的,那么又是如何与信息量联系起来的呢?

熵与信息量

虽然我们有了信息熵的公式,但抽象且不容易理解. 应该如何理解信息熵呢?下面是维基百科中给出的一句解释:

In information theory, the entropy of a random variable is the average level of "information", "surprise", or "uncertainty" inherent in the variable's possible outcomes.

也就是说,一个随机变量的熵是指该变量可能的结果所蕴含的不确定性的平均水平.

举个例子,对于一枚不均衡的硬币,抛掷它时以概率 \(p\) 正面朝上,以概率 \(1-p\) 反面朝上. 则容易理解,当 \(p=1/2\) 时,抛出一枚硬币的不确定性最大,即很难判断抛出后哪一面朝上;当 \(p\) 接近 \(1\)(或 \(0\))时,这种不确定性减小,直到 \(p=1\)(或 \(p=0\))时不确定性最小,这时即使不抛该硬币,我们也确定的知道哪一面朝上.

我们就用熵来定量衡量这种随机事件的不确定性,至于如何定量先不讨论,先来看看熵与信息量有什么联系.

信息论中有一句常见的口诀:“不确定性越多(概率越低),信息量越大;不确定性越低(概率越高),信息量越小“,也就是对信源来说,所发出的信号对于接受者可以看作随机变量,接受者在接受前对该变量的不确定性越大,则接收到后所“消除”的不确定越大,则获得的信息量越大.

举个例子:你知道你每天起床后你妈一定会对你说:“你看你像猪一样起这么晚!”,这句话对你来说没有任何不确定性(概率为 \(1\)),那么你听到这句话后也就不会消除任何不确定性,也即没有获得信息量. 然后你还知道,你妈接下来会告诉你早餐吃什么,虽然不是包子就是油条. 这时你妈开口了:“还不快点起,包子都凉了!”,在你听到这句话前对于你妈这句话说什么是有不确定性的,你不知道是“包子都凉了”还是“油条都软了”,因此你妈的这句话消除了你对于吃包子还是吃油条的不确定性,你因此获得了一定的信息量.

以上通俗的解释了“熵”、“信息量”的概念,但需要注意的是信息熵不等同于信息量,但它们在量上是相等的. 即,“熵”度量了不确定性,而接受信息后所消除的不确定性即为该信息的“量”.

信息量和熵都是相对于某一主体来说的,即同一个信息对于不同的人而言信息量不同,同一件不确定的事情对于不同的人所蕴含的熵也不同.

定量

以上定性的解释了“熵”的含义,那么公式中熵的值是怎么确定的呢?

类似于质量、长度等物理量,信息熵同样作为物理量也需要有一个基本度量单位. 类似于光年作为长度单位被定义为光行驶一年的长度,熵的基本单位被定义为等概率 \(0-1\) 分布随机变量的不确定性,记作 \(1\mathrm{bit}\). 也就是说抛一枚均匀的硬币,对于哪面朝上这一事件包含的不确定性的量是 \(1\ \mathrm{bit}\) 熵.

有了基本单位,衡量其他随机变量的熵就有了基准,类似于光行驶 \(3\) 年的距离为 \(3\) 光年,那么抛掷 \(2\) 均匀枚硬币结果的不确定性即为 \(2\ \mathrm{bit}\). 容易理解,对于抛掷 \(n\) 枚硬币而言,其熵为 \(n\ \mathrm{bit}\). 因此,所有与抛掷硬币分布相同的随机变量其熵都可以被类似的计算.

对于等概率事件仍可以类似量化,比如对于猜一道有四个选项的选择题的答案,那么四个答案的概率均等分布,与先后掷两枚硬币的分布是等同的,因此其熵为 \(2\ \mathrm{bit}\). 类似地,对于有 \(8 = 2^3\) 个等可能结果的分布,与掷 \(3\) 枚硬币等同,其熵为 \(\log_2 8 = 3\ \mathrm{bit}\). 将其推广至有 \(n\) 个等可能结果的概率分布,其熵为

\[ \log_2n = \log_2\frac1{p} \ \mathrm{bit} \]

其中 \(p = \frac 1n\) 为每个结果发生的概率.

至此,已经解决了等概率分布的随机变量的熵的计算,那么对于不等概率的分布将如何计算呢?公式中展示出了加权的思想,即把每一个结果都看作等可能事件中的一个结果,按照其发生的概率加权求和.

例如,通过某些“手段”答题人得知选项 A、B、C、D 为正确答案的概率分别为 \(\frac12,\frac14,\frac18,\frac18\),那么此时如何求熵呢?首先把 A 选项看作投掷一枚硬币某一面朝上,对应的熵为 \(1\ \mathrm{bit}\),但 A 为正确答案的可能性只有 \(\frac 12\),因此将 \(\frac12\) 作为 \(1\ \mathrm{bit}\) 的权值. 类似地,得到 B、C、D 对应的数值项:\(\frac14 \log_24\)\(\frac18\log_2 8\)\(\frac18\log_28\). 将以上各项相加就得到此时正确答案 \(X\) 的熵:

\[ \begin{aligned} H(X) &= \frac12\log_2 2 + \frac14\log_24+\frac18\log_28 + \frac18\log_28 \\ & = -\frac12\log_2\frac12 - \frac14\log_2\frac14- \frac18\log_2\frac18 - \frac18\log_2\frac18 \\ & = -\sum_{i=1}^4P(x_i)\log_2P(x_i) \end{aligned} \]

至此,便得到了熵的定义中的公式形式.

\[ \begin{aligned} H(X) & = \sum_{i=1}^nP(x_i)\log_2\frac1{P(x_i)} \\ &= -\sum_{i=1}^nP(x_i)\log_2 P(x_i) \end{aligned} \]

性质

香农总结出了信息熵的三条性质:

  1. 单调性,即发生概率越高的事件,其所携带的信息熵越低.
  2. 非负性,即信息熵不能为负.
  3. 累加性,即多随机事件同时发生的的总不确定性的度量可以表示为各事件不确定性的度量的和,也即:

对于相互独立的随机变量 \(X,Y\)\[ P(X=A, Y=B) = P(X=A)\cdot P(Y=B) \] 有: \[ H(XY) = H(X) + H(Y) \]

香农从数学上,严格证明了满足上述三个条件的随机变量不确定度量具有唯一的形式:

\[ H(X) = -C\sum_{x\in \mathcal{X}} P(x)\log_2P(x) \]

信息量(Quantities of information)

信息量是衡量信息多少的度量,其值等于获得该信息后减少的随机变量不确定性量.

例如,对于一个有四个选项的选择题,我根本不会做,则正确答案对应的随机变量 \(X\) 的熵 \(H_1(X)\)

\[ -\sum_{i=1}^4 P(x_i)\log_2P(x_i) = -4\times\frac14\times \log_2\frac14 = 2\ \mathrm{bit} \]

若此时老师说 A 选项是错的,不选,根据公式则有 \[ H_2(X) = -3\times\frac13\times\log_2\frac13 \approx 1.5850\ \mathrm{bit} \]

那么老师这句话带给我的信息量则为:

\[H_1(X) - H_2(X) \approx 0.4150\ \mathrm{bit}\]

如果我的同桌小农一开始就知道这题选 D,那么关于这道题答案的熵对于他来说即为 \(0\),老师的话对于他来说信息量为 \(0\). (当然这里讨论的假设必须都是客观的:小农是真正的知道正确答案,而不是错误的知道“正确答案”,即熵和信息量作为物理量虽然相对于主客体的不同而不同,但具有不以主观意志转移的客观性)


参考资料