谈谈“熵”。

熵的起源

热力学第一定律:能量守恒定律

19世纪,科学家们通过热力学的研究得出了「热力学第一定律」即「能量守恒定律(energy conservation law)」指在一个封闭(孤立)系统的总能量保持不变。

但能量在转换时,效率不是100%,有很多丢失孙好了。比如家用车的燃料从化学能到动能只转化了30%左右。

这些被耗散的能量就是「熵」,即「无法利用的能量」。

热力学第二定律:熵增加原理

热力学第二定律比较拗口:

  1. 热总是从高温物体到低温物体
  2. 热能转其他能量不可能达到100%

更准确地说:孤立系统的熵值永远是增加的,即「熵增加原理」。

  • 可以利用的能量是「聚在一起的」,比如高温物体,燃料,水库里面的水。他们是「有序」的。
  • 不可以利用的能量(即熵)是「平均分布的」,因为高温物体总要把热传递给低温物体。他们是「无序」的。

热力学熵的公式如下。其中W是桂冠状态数。即微观状态越多(越无序),则熵越大。

$$ S=kln(W) $$

信息论角度的熵

信息论的熵和热力学的熵不是一回事,但有相通之处。从信息编码的角度,信息熵就是编码某信息所需的最小比特数。

$$ H(X)= - \sum_{x \in X} P(x)logP(x) $$

对于一个确定的事情,其概率为1,则熵为0。

信息熵的三条性质

  • 单调性:发生概率越高的事物,信息熵越低
  • 非负性:总是大于或等于0
  • 累加性:若事件A和B独立,则H(A, B) = H(A) + H(B)

关于累加性,如果A和B不独立,则H(A, B) = H(A) + H(B) - I(A, B)。其中I(A, B)是互信息(mutual information),代表一个随机变量包含另一个随机变量信息量的度量。

交叉熵,相对熵(KL散度),JS散度

  • 熵表示对A进行最佳编码所需要的平均编码长度
  • 交叉熵表示用B的最佳编码来表示A时,所需要的平均编码长度
  • KL散度表示 交叉熵减去熵,即用B的编码来表示A所需要的额外编码长度(相比用A自己编码)
  • JS散度基于KL散度,但变得对称。

中文的熵

熵越大,表示越不确定,越需要更多的比特数去描述信息。很不幸,中文的熵很高,甚至可以说是所有语言里面最高的。

参考

Contents