0%

信息熵在压缩编码中的理解

一、公式

其中:

  • 表示字符串长度;
  • 表示单个字符;
  • 表示所有的字符集
  • 表示的概率;
  • 表示该字符串中任意字符信息的平均长度期望值,也就是我们说的信息熵。

由于我们通常使用二进制来实际存储传输字符信息,因此计算实际的信息长度使的就是二进制的长度,这里也是用来计算信息长度。
这里使用频率(概率)来计算当前字符存储最少需要的bit长度,该字符在字符串中出现的频率(概率)越高,优先使用越短的bit长度收益会越大。理解时可以参考哈夫曼编码的思路。
因此使用表示字符实际的有效信息长度。对所有的的长度乘以各自出现的概率然后进行累计计算后就可以得到当前字符串中单个字符的平均长度期望值。此时就可以计算出包含该字符串信息的最短bit长度为: