熵(Entropy):机器学习

  • 熵(Entropy):机器学习

      • 定义
      • SOURCE CODING THEOREM
    • 联合熵(Joint Entropy)
      • 定义
    • 条件熵(Conditional Entropy)
      • 定义

定义

从信息的角度来说,熵(Entropy)是一种从定量的角度来衡量信息(Information) 多少的指标。简单的说,就是信息所包含的不确定性的大小度量。一个信息所包含的事件的不确定性越大,它所含的信息就越多。我的理解是在这个信息还未获得时,这个信息所描述的事件的不确定性的大小。

举两个例子,当你获得一条可靠的信息:明天太阳从东方升起。这个信息所包含的信息量很少,因为就算你没获得这个信息,你也知道太阳确定以以及肯定是东方升起,这个信息毫无价值。但是当你获得一条可靠的信息:下期彩票的中奖号码是XXXXXXXX时,这个信息就非常有价值了,因为可能的中奖号码有很多,每个概率都很低。
下面给出熵的定义:

H(X)=−∑i=1Npilog2piH(X)=−∑i=1Npilog2pi

H(X) = -\sum_ {i=1}^{N}p_i log_2 p_i
H(X)H(X)H(X)表示X包含的信息, pipip_i是 XXX第i" role="presentation" style="position: relative;">iii种可能的概率。
例如,明天太阳升起,有 X={东方,西方}X={东方,西方}X=\{东方,西方\}两种可能,假设 p(X=东方)=0.99999p(X=东方)=0.99999p(X=东方)=0.99999, p(X=西方)=0.00001p(X=西方)=0.00001p(X=西方)=0.00001,那么我们可以发现 H(X)≈0H(X)≈0H(X)\approx 0,几乎不包含信息,这从直观上反映了这个定义的合理性。
可以证明以下公式成立:

H(XY)≤H(X)+H(Y)H(XY)≤H(X)+H(Y)

H(XY)\leq H(X)+H(Y)
等号当且仅当 XXX和Y" role="presentation" style="position: relative;">YYY是相互独立时成立。

SOURCE CODING THEOREM

对Source X进行编码的编码率R(bit/symbol)理论下界是:

R≥H(X)R≥H(X)

R \geq H(X)
具体例子看信息编码方面的资料吧。

联合熵(Joint Entropy)

定义

XXX和Y" role="presentation" style="position: relative;">YYY两个事件联合熵定义为:

H(XY)=−∑x,yp(x,y)log2p(x,y)H(XY)=−∑x,yp(x,y)log2p(x,y)

H(XY) = -\sum_{x,y}p(x,y)log_2 p(x,y)
其中 p(x,y)p(x,y)p(x,y)是联合概率密度(joint probability)

条件熵(Conditional Entropy)

首先举一个栗子,我们发现事件:今天天气情况Y={晴天,下雨}Y={晴天,下雨}Y=\{晴天,下雨\}和事件小涛今天是否去上课X={去上课,在家里}X={去上课,在家里}X = \{去上课,在家里\}之间有一个联合概率。当今天下雨时,小涛有大概率不去上课;当天气晴朗时,他也有不小的概率不去上课(哈哈哈)。那么,对于小涛有没有去上课这个事件XXX来说,它有一个不等于零的熵H(X)(有不确定性),那么,当我们已知今天下雨Y=下雨" role="presentation" style="position: relative;">Y=下雨Y=下雨Y=下雨 的前提下,事件XXX的熵(不确定性)发生变化了吗?这个时候的熵就变成H(X|Y=下雨)" role="presentation" style="position: relative;">H(X|Y=下雨)H(X|Y=下雨)H(X|Y=下雨)

定义

H(X|Y)=∑i=1QH(X|Y=yi)P(Y=yi)H(X|Y)=∑i=1QH(X|Y=yi)P(Y=yi)

H(X|Y) = \sum_{i=1}^{Q}H(X|Y = y_i)P(Y=y_i)

利用条件概率公式:

H(X|Y)=−∑i=1Q∑j=1qP(xj,yi)log2P(xj|yi)H(X|Y)=−∑i=1Q∑j=1qP(xj,yi)log2P(xj|yi)

H(X|Y) =- \sum_{i=1}^{Q}\sum_{j=1}^{q}P(x_j,y_i)log_2 P(x_j|y_i)
这个公式定义了,在已知事件Y发生的前提下,事件X的熵的大小。很明显,如果事件X,Y是相互独立的事件,它们俩之间不存在任何的关联(但是现实中哪有不存在任何关联的两个事件呢,比如本泽马的锅),那么 H(X|Y)=H(X)H(X|Y)=H(X)H(X|Y) = H(X)
可以证明:

H(XY)=H(X|Y)+H(Y)H(XY)=H(X|Y)+H(Y)

H(XY) = H(X|Y)+H(Y)
这事实上就是条件概率和联合概率 P(XY)=P(X|Y)P(Y)P(XY)=P(X|Y)P(Y)P(XY) = P(X|Y)P(Y)的熵的表述。

熵(Entropy):机器学习相关推荐

  1. 理解熵:机器学习的黄金标准

    理解熵:机器学习的黄金标准 TL; DR:熵是对系统中混沌的一种度量. 因为它比诸如准确性甚至均方误差之类的其他更严格的度量标准更具动态性,所以使用熵来优化从决策树到深度神经网络的算法已显示出可以提高 ...

  2. 自然语言中的重要概念——熵(Entropy)

    一.背景 熵是热力学中的一个重要的概念,最早是由香农(Claude Shannon)将熵应用于信息的度量. 熵(Entropy)是描述事物无序性的一个重要的参数,熵越大则无序性越强,同时,熵表示一个随 ...

  3. 一文搞懂交叉熵在机器学习中的使用,透彻理解交叉熵背后的直觉

    关于交叉熵在loss函数中使用的理解 交叉熵(cross entropy)是深度学习中常用的一个概念,一般用来求目标与预测值之间的差距.以前做一些分类问题的时候,没有过多的注意,直接调用现成的库,用起 ...

  4. 熵(Entropy),交叉熵(Cross-Entropy),KL-松散度(KL Divergence),似然(Likelihood)

    1.介绍: 我们如何去衡量y,y`的接近程度? 在这里我们介绍一下一种衡量方式交叉熵(Cross-Entropy),然后说明一下为什么这种方式适用于分类问题. 2.熵(Entropy): 熵的概念来自 ...

  5. matlab图像信息熵交叉熵,【机器学习】信息量,信息熵,交叉熵,KL散度和互信息(信息增益)...

    首先先强烈推荐一篇外文博客Visual Information Theory这个博客的博主colah是个著名的计算机知识科普达人,以前很是著名的那篇LSTM讲解的文章也是他写的.这篇文章详细讲解了信息 ...

  6. 使用Python计算离散随机变量的熵(Entropy)

    一.离散随机变量 设为离散型随机变量的所有可能值:而是取的概率,即 则称为(离散)随机变量的概率分布,而且它满足下面的条件: 在现实中,通常这个随机变量的取值个数是可数的.这里假设随机变量的取值个数为 ...

  7. 熵 Entropy -- 香农熵、相对熵、交叉熵、条件熵

    快速概览: 香农熵 -- 熵的定义 交叉熵 -- 一般可做为分类模型的损失函数 (交叉熵是由相对熵转化过来的,交叉熵 = 相对熵 - 熵 ),对于采样的数据(训练集,熵H 是定值,故交叉熵 和 相对熵 ...

  8. 一文懂熵Entropy

    本文翻译自https://naokishibuya.medium.com/demystifying-entropy-f2c3221e2550 我们常常听到[熵增],[熵减]等概念.那么熵是什么? 熵这 ...

  9. 一文了解机器学习中的交叉熵

    https://www.toutiao.com/a6654435108105224712/ 2019-02-05 16:46:49 熵 在介绍交叉熵之前首先介绍熵(entropy)的概念.熵是信息论中 ...

  10. 相对熵与交叉熵_详解机器学习中的熵、条件熵、相对熵、交叉熵

    目录 信息熵 条件熵 相对熵 交叉熵 总结 一  信息熵 (information entropy) 熵 (entropy) 这一词最初来源于热力学.1948年,克劳德·爱尔伍德·香农将热力学中的熵引 ...

最新文章

  1. Codeforces Round #367 (Div. 2)
  2. Java -jar启动服务与Tomcat服务器上部署JAR之间的区别
  3. WindowsPE 第五章 导出表编程-1(枚举导出表)
  4. Matlab计算机视觉/图像处理工具箱(待续)
  5. simulink模块使用记录2-EnabledSubsystem/merge
  6. 海信计算机辅助统,海信计算机辅助手术系统(CAS2.2)升级面市
  7. 如何通过iMazing导出Safari浏览器的历史记录
  8. UILabel的相关属性设置
  9. spring 事务源码分析(四)传播机制总览
  10. 编译jitsi-meet安卓遇到的问题
  11. 用Python对淘宝用户行为数据的分析
  12. FPGA引脚功能说明与分析
  13. python中常用英语口语_1000句常用英语口语
  14. IDEA搭建单模块springboot-web项目、多模块springboot-web项目
  15. arm汇编总结---让汇编不再神秘
  16. Python热点舆情数据挖掘
  17. XStream介绍与使用
  18. ATH10传感器读取温湿度
  19. shader 光照贴图
  20. APT(Advanced Packaging Tool)

热门文章

  1. 1449异常 mysql_mysql异常-UncategorizedSQLException 1449
  2. 你不得不看的“互联网+企业购”大趴攻略
  3. zabbix微信报警
  4. 笃情开源:我和 Apache DolphinScheduler 社区的故事
  5. 哪种程序员最挣钱?平均月薪30.8K,网友说这是掌握世界的技术
  6. python导入mysqldb_Python导入MySQLdb
  7. 【知识图谱】Neo4j 导入数据构建知识图谱的三种方法
  8. [已解决]关于python无法显示中文的问题:SyntaxError: Non-ASCII character '\xe4' in file test.py on line 3, but no enc
  9. HTML页面转PDF导出加水印并解决字被截断的问题
  10. 在c语言的switch 语句中,的case后面的表达式,什么值必须在switch语句中case后面