java语言信息熵 博客_信息熵的简单理解

熵,信息熵在机器学习和深度学习中是十分重要的。那么,信息熵到底是什么呢?

首先,信息熵是描述的一个事情的不确定性。比如:我说,太阳从东方升起。那么这个事件发生的概率几乎为1,那么这个事情的反应的信息量就会很小。如果我说,太阳从西方升起。那么这就反应的信息量就很大了,这有可能是因为地球的自转变成了自东向西,或者地球脱离轨道去到了别的地方,那么这就可能导致白天变成黑夜,热带雨林将变成沙漠,东北亚将不再是苦寒之地,而是现在的西欧一样的海洋性季风气候,而西欧变成寒带大陆性气候跟现在的东北亚苦寒之地一样。

那么,太阳从东方升起这个事件,概率很大,信息量就会很少。相反,太阳从西方升起,概率很小,信息量就会很多。因此,信息熵常被用来作为一个系统的信息含量的量化指标,从而可以进一步用来作为系统方程优化的目标或者参数选择的判据。

先来一个信息熵的公式:

a760845a8c00513c24c997bd6c27ce4b.png

其中:𝑝(𝑥𝑖)代表随机事件𝑥𝑖的概率。

由上面太阳东升西落,西升东落很容易看出,信息量是随着发生的概率的增大而减少的,而且不能为负。

另外,如果我们有两个不相关事件A和B,那么可以得知这两个事情同时发生的信息等于各自发生的信息之和。即h(A,B) = h(A) + h(B)

而且,根据贝叶斯定理,p(A,B) = p(A) * p(B)

根据上面说到的说熵的定义应该是概率的单调函数。我们很容易看出结论熵的定义 h 应该是概率p(x) 的 log 函数,因此一个随机变量的熵可以使用以下定义:

equation?tex=%5C%5Bh%28x%29%3D-log_2p%28x%29%5C%5D

此处的负号,仅仅是为了保证熵为正数或者为零,而log函数的基数2可以使任意数,只不过根据普遍传统,使用2作为对数的底。

我们用熵来评价整个随机变量x平均的信息量,而平均最好的量度就是随机变量的期望,即信息熵的定义如下:

equation?tex=H%5Bx%5D%3D-%5Csum_xp%28x%29log_2p%28x%29

最终的公式就出来了!还要说明的是,当这个事情一定发生的时候,发生的概率就为1,那么它的信息量为0,信息熵就为0。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值