信息量+信息熵

信息量

在讨论什么是信息熵之前,我们先了解一下什么是信息量。

信息量可以用来用来衡量一个事件发生的惊奇程度。
事件发生的概率越低,该事件发生对应的惊奇程度越高。
比如,事件“天上出彩虹”就比事件“天上下雨”更令人惊奇,
因为前者的发生概率远远小于后者。

一个系统,包括的等可能事件数量越多事件的发生概率也就越低
传递一个事件的发生, 所需的比特信号也就越多

举例,假如有两城市A、B,二者只能通过01信号传递信息。
当A城投掷了1个硬币(2种等可能)时,我们至少需要使用1=log2(2)个比特信号, 告诉B城市是正面朝上还是反面朝上。
类似地,当A城市投掷一个有8个面的骰子(8种等可能)时,我们至少需要3=log2(8)个比特的信号来传递该信息。

假如系统中有N等可能事件,那么我们将I=log2(N)称为信息量。
由于等可能事件的发生概率为1N,则信息量的公式可以写作log2(1N)
推而广之,假设事件xi 的发生概率为p(xi) ,则传递该事件发生需要的最少比特信号位(即信息量)为 log21p(xi), 即 log2(p(xi))

信息熵

知道什么是信息量,我们就可以方便地计算信息熵了。
信息熵用于衡量整个事件空间包含的平均信息量,即信息量的平均期望
我们只需要将事件空间中所有事件发生的概率,乘以该事件的信息量,即可得到信息熵:
Hp(X)=x=1np(xi)log21p(xi), 即 Hp(X)=x=1np(xi)log2p(xi)

信息熵也被称作无损编码事件信息的最小平均编码长度。怎么理解呢?
学过霍夫曼树的同学都知道,为提升编码效率,可对不同事件采取不同长度的编码。
信息熵的作用,就是指出这种数据压缩效率的极限。

posted @   abaelhe  阅读(55)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示