什么是熵(entropy)?
熵的概念最早起源于物理学,用于度量一个热力学系统的无序程度。在信息论里面,熵是对不确定性的测量。
1.1 熵的引入
事实上,熵的英文原文为entropy,最初由德国物理学家鲁道夫·克劳修斯提出,其表达式为:
它表示一个系系统在不受外部干扰时,其内部最稳定的状态。后来一中国学者翻译entropy时,考虑到entropy是能量Q跟温度T的商,且跟火有关,便把entropy形象的翻译成“熵”。
我们知道,任何粒子的常态都是随机运动,也就是"无序运动",如果让粒子呈现"有序化",必须耗费能量。所以,温度(热能)可以被看作"有序化"的一种度量,而"熵"可以看作是"无序化"的度量。
如果没有外部能量输入,封闭系统趋向越来越混乱(熵越来越大)。比如,如果房间无人打扫,不可能越来越干净(有序化),只可能越来越乱(无序化)。而要让一个系统变得更有序,必须有外部能量的输入。
若无特别指出,下文中所有提到的熵均为信息熵。
1.2 熵的定义
下面分别给出熵、联合熵、条件熵、相对熵、互信息的定义。
把最前面的负号放到最后,便成了:
上面两个熵的公式,无论用哪个都行,而且两者等价,一个意思(这两个公式在下文中都会用到)。
联合熵:两个随机变量X,Y的联合分布,可以形成联合熵Joint Entropy,用H(X,Y)表示。
条件熵:在随机变量X发生的前提下,随机变量Y发生所新带来的熵定义为Y的条件熵,用H(Y|X)表示,用来衡量在已知随机变量X的条件下随机变量Y的不确定性。
且有此式子成立:H(Y|X) = H(X,Y) – H(X),整个式子表示(X,Y)发生所包含的熵减去X单独发生包含的熵。至于怎么得来的请看推导:
简单解释下上面的推导过程。整个式子共6行,其中
- 第二行推到第三行的依据是边缘分布p(x)等于联合分布p(x,y)的和;
- 第三行推到第四行的依据是把公因子logp(x)乘进去,然后把x,y写在一起;
- 第四行推到第五行的依据是:因为两个sigma都有p(x,y),故提取公因子p(x,y)放到外边,然后把里边的-(log p(x,y) - log p(x))写成- log (p(x,y)/p(x) ) ;
- 第五行推到第六行的依据是:条件概率的定义p(x,y) = p(x) * p(y|x),故p(x,y) / p(x) = p(y|x)。
相对熵:又称互熵,交叉熵,鉴别信息,Kullback熵,Kullback-Leible散度等。设p(x)、q(x)是X中取值的两个概率分布,则p对q的相对熵是:
在一定程度上,相对熵可以度量两个随机变量的“距离”,且有D(p||q) ≠D(q||p)。另外,值得一提的是,D(p||q)是必然大于等于0的。
互信息:两个随机变量X,Y的互信息定义为X,Y的联合分布和各自独立分布乘积的相对熵,用I(X,Y)表示:
且有I(X,Y)=D(P(X,Y) || P(X)P(Y))。下面,咱们来计算下H(Y)-I(X,Y)的结果,如下:
通过上面的计算过程,我们发现竟然有H(Y)-I(X,Y) = H(Y|X)。故通过条件熵的定义,有:H(Y|X) = H(X,Y) - H(X),而根据互信息定义展开得到H(Y|X) = H(Y) - I(X,Y),把前者跟后者结合起来,便有I(X,Y)= H(X) + H(Y) - H(X,Y),此结论被多数文献作为互信息的定义。
什么是熵(entropy)?相关推荐
- 自然语言中的重要概念——熵(Entropy)
一.背景 熵是热力学中的一个重要的概念,最早是由香农(Claude Shannon)将熵应用于信息的度量. 熵(Entropy)是描述事物无序性的一个重要的参数,熵越大则无序性越强,同时,熵表示一个随 ...
- 熵(Entropy),交叉熵(Cross-Entropy),KL-松散度(KL Divergence),似然(Likelihood)
1.介绍: 我们如何去衡量y,y`的接近程度? 在这里我们介绍一下一种衡量方式交叉熵(Cross-Entropy),然后说明一下为什么这种方式适用于分类问题. 2.熵(Entropy): 熵的概念来自 ...
- 使用Python计算离散随机变量的熵(Entropy)
一.离散随机变量 设为离散型随机变量的所有可能值:而是取的概率,即 则称为(离散)随机变量的概率分布,而且它满足下面的条件: 在现实中,通常这个随机变量的取值个数是可数的.这里假设随机变量的取值个数为 ...
- 熵 Entropy -- 香农熵、相对熵、交叉熵、条件熵
快速概览: 香农熵 -- 熵的定义 交叉熵 -- 一般可做为分类模型的损失函数 (交叉熵是由相对熵转化过来的,交叉熵 = 相对熵 - 熵 ),对于采样的数据(训练集,熵H 是定值,故交叉熵 和 相对熵 ...
- 一文懂熵Entropy
本文翻译自https://naokishibuya.medium.com/demystifying-entropy-f2c3221e2550 我们常常听到[熵增],[熵减]等概念.那么熵是什么? 熵这 ...
- 熵(entropy)、交叉熵(cross-entropy)
原文:一文搞懂熵(Entropy),交叉熵(Cross-Entropy) 一.熵 1.混乱程度,不确定性,信息量? 不同的人对熵有不同的解释:混乱程度,不确定性,惊奇程度,不可预测性,信息量等等,面对 ...
- 机器学习笔记十:各种熵总结
一.什么是熵 Ⅰ.信息量 首先考虑一个离散的随机变量x,当我们观察到这个变量的一个具体值的时候,我们接收到多少信息呢? 我们暂时把信息看做在学习x的值时候的"惊讶程度"(这样非常便 ...
- 神经网络学习中的SoftMax与交叉熵
简 介: 对于在深度学习中的两个常见的函数SoftMax,交叉熵进行的探讨.在利用paddle平台中的反向求微分进行验证的过程中,发现结果 与数学定义有差别.具体原因还需要之后进行查找. 关键词: 交 ...
- 为什么需要交叉熵代价函数
为什么需要交叉熵代价函数 人类却能够根据明显的犯错快速地学习到正确的东西.相反,在我们的错误不是很好地定义的时候,学习的过程会变得更加缓慢.但神经网络却不一定如此,这种行为看起来和人类学习行为差异很大 ...
- kl距离 java_信息量、熵、最大熵、联合熵、条件熵、相对熵、互信息。
一直就对机器学习中各种XX熵的概念比较模糊,现在总结一下自己的学习心得. 信息量 先说一下信息量的概念,其实熵就是信息量的集合. 摘抄个例子: 英文有26个字母,假设每个字母出现的概率是一样的,每个字 ...
最新文章
- Java封装(速读版)
- [Leedcode][JAVA][第876题][快慢指针]
- 全志A20单独烧录内核
- 宽带和流量是分开的吗_为什么现在的手机套餐与宽带越来越贵,只是因为建设5G吗?...
- AAAI 2020 | 首个使用 NAS 设计的 GCN,达到动作识别SOTA,代码将开源
- php mysql blob存储图片_php mysql blob存储图片
- 吴恩达神经网络和深度学习-学习笔记-6-训练集、验证集和测试集 + 偏差bias和方差variance
- Euler Tour Tree与dynamic connectivity
- Spring Cloud (6)config 客户端配置 与GitHub通信
- Java单例模式(饿汉式)
- Excel 2010 SQL应用096 聚合函数之标准偏差及标准差
- Ubuntu系统管理 —— 使用SSH及SCP实现远程登陆与数据传输
- Android调建行APP、建行微信遇到的坑
- 【Python小知识】:什么是序列解包
- 一个cv大师的摆烂之旅
- 程序设计入门C语言 --- 时间换算
- 百度云的产品及使用场景分析
- 使用tarjan算法和fleury算法求解中国邮递员问题
- 信息化企业招投标,最加分的资质证书大盘点
- composer安装依赖包