信息熵与压缩编码基础
一、什么是信息熵
信息熵是消除不确定性所需信息量的度量,也即未知事件可能含有的信息量。也可以理解成某种特定信息的出现概率(离散随机事件的出现概率)。一个系统越是有序,信息熵就越低;反之,一个系统越是混乱,信息熵就越高。信息熵是系统有序化程度的一个度量。
二、信息熵的计算与两种编码方式的压缩率计算
一串消息包含A,B,C,D,E共5类符号,其内容是AABBBBAAAACCCCCCCCCEEEEEEDDDDEEEEEEEEEEEEE, 请问其信息熵是多少?如果分别采用香农-凡诺编码,霍夫曼编码,压缩率分别是多少?
符号 | 次数 | log(1/p(x)) |
---|---|---|
A | 6 | 2.827 |
B | 4 | 3.392 |
C | 9 | 2.222 |
D | 4 | 3.392 |
E | 19 | 1.144 |
共计 | 42 | — |
答:字符串的熵 H ( x ) = ∑ i = 1 n p ( x i ) l o g 2 p ( 1 / x i ) = 6 / 42 l o g ( 42 / 6 ) + 4 / 42 l o g ( 42 / 4 ) + 9 / 42 l o g (