信息熵是最小平均编码长度

如何理解最后一句话呢,编码信息熵就是平均最小编码长度?


信息熵就是平均最小编码长度

信息熵想用最短的码表示信息。
熵公式,有数学期望,对概率求对数,表示单符号的信息量。

所以信息熵的期望就是平均信息。  平均两个字有了。
再说最小,最小我没法严格的推到,我只能说服我自己

设二进制,k个数据等概,p(xi)是1/k,
h(x)=  -Σp(xi)×log(p(xi)

log以二为底,所以信息熵刚好是以2为底k的对数。
如果k取是二指数倍,刚好就是二进制的位数,
k不是整数倍,floor(k)是他最小的表示方法。因为不能用小数。

小数当然比floor(小数)要小。
所以信息熵是最小的平均编码长度


编码长度就是-log(p(xi)  
然后把平均,最小,编码长度串接在一起。我估计就是作者的意思了



log以二为底,所以信息熵刚好是以2为底k的对数。
如果k取是二指数倍,刚好就是二进制的位数,
k不是整数倍,floor(k)是他最小的表示方法。因为不能用小数。

小数当然比floor(小数)要小。
所以信息熵是最小的平均编码长度

其实1是最好想的  
比如抛硬币,1代表正,0代表反
也可以用,11代表正,00代表反
最短长度是1  h(x)=(1/2)*log(1/2)*2  此时log以2位底数
所以 h(x)等于1 最小

 

posted @ 2019-02-16 20:05  丹心静居  阅读(3070)  评论(0编辑  收藏  举报