目录

  • 一、信息量
  • 二、熵(entropy)
  • 三、联合熵
  • 四、条件熵
  • 五、相对熵(KL散度)
  • 六、交叉熵(cross entropy)
  • 七、JS散度(Jensen-Shannon divergence)
  • 八、互信息

一、信息量

信息是用不确定性的量度定义的。事件出现的概率小,不确定性越多,信息量就大,反之则少。

对于信息量与概率成负相关的理解:
当信源(产生消息的来源)中某一消息(事件)发生的不确定性越高,一旦它发生,并且被收信者接受,消除的不确定性也就越大,获得的信息也就越多。如果收信者接受到被干扰的消息,对一个消息(事件)发生的不确定性几乎没有消除,则收信者接受到的信息也就微乎其微。因此,获得信息量的大小与不确定性消除的大小有关,我们直观地将信息量定义为
    接受到了某消息(事件发生)所获得的信息量
    =不确定性减少量
    =(收到此消息前关于某事件发生的不确定性)-(收到此消息后关于某事件发生的不确定性)
举个例子:
2020年7月25日太阳从东边升起这个事件(必然事件),这件事发生前你知道了这件事情必然会发生(不确定性是0),发生后(不确定性也是0),不确定性减少量是0,因此我们所接受到的信息量是0。

上面几段话的总结:一个事件发生的概率越小,不确定性越大,(因为事件发生了,并且被接收了,事件发生所消除的不确定性就越大了),事件发生所带来的信息量也就越大。(可以看出来信息量与概率成负相关了)

香农提出了一个定量衡量信息量的公式:
log ⁡ 1 p = − log ⁡ p \log \frac{1}{p}=-\log p logp1​=−logp

二、熵(entropy)

其实就是一个系统所有变量信息量的均值(期望),是衡量一个系统的稳定程度。当一个系统越不稳定,或者事件发生的不确定性越高,它的熵就越高。
公式:
对于离散变量:
H ( X ) = ∑ x ∈ X P ( x ) log ⁡ 1 P ( x ) = − ∑ x ∈ X P ( x ) log ⁡ P ( x ) = − E log ⁡ P ( X ) H(X)=\sum_{x \in X} P(x) \log \frac{1}{P(x)}=-\sum_{x \in X} P(x) \log P(x)=-E \log P(X) H(X)=x∈X∑​P(x)logP(x)1​=−x∈X∑​P(x)logP(x)=−ElogP(X)

对于连续变量:
H ( X ) = ∫ P ( x ) ⋅ log ⁡ 1 P ( x ) d x H(X)=\int P(x) \cdot \log \frac{1}{P(x)} d x H(X)=∫P(x)⋅logP(x)1​dx

三、联合熵

多个联合变量的熵,也就是将熵的定义推广到多变量的范围。
H ( X , Y ) = ∑ x ∈ X ∑ y ∈ Y P ( x , y ) log ⁡ 1 P ( x , y ) = − E log ⁡ P ( X , Y ) H(X, Y)=\sum_{x \in X} \sum_{y \in Y} P(x, y) \log \frac{1}{P(x, y)}=-E \log P(X, Y) H(X,Y)=x∈X∑​y∈Y∑​P(x,y)logP(x,y)1​=−ElogP(X,Y)

四、条件熵

一个随机变量在给定的情况下,系统的熵,即假设在给定一个变量下,该系统信息量的期望。
H ( Y ∣ X ) = ∑ x ∈ X P ( x ) H ( Y ∣ X = x ) = ∑ x ∈ X P ( x ) [ ∑ y ∈ Y P ( y ∣ x ) log ⁡ 1 P ( y ∣ x ) ] = ∑ x ∈ X ∑ y ∈ Y P ( x ) P ( y ∣ x ) log ⁡ 1 P ( y ∣ x ) = ∑ x ∈ X ∑ y ∈ Y P ( x , y ) log ⁡ 1 P ( y ∣ x ) = − E log ⁡ P ( Y ∣ X ) \begin{aligned} H(Y \mid X) &=\sum_{x \in X} P(x) H(Y \mid X=x) \\ &=\sum_{x \in X} P(x)\left[\sum_{y \in Y} P(y \mid x) \log \frac{1}{P(y \mid x)}\right] \\ &=\sum_{x \in X} \sum_{y \in Y} P(x) P(y \mid x) \log \frac{1}{P(y \mid x)} \\ &=\sum_{x \in X} \sum_{y \in Y} P(x, y) \log \frac{1}{P(y \mid x)} \\ &=-E \log P(Y \mid X) \end{aligned} H(Y∣X)​=x∈X∑​P(x)H(Y∣X=x)=x∈X∑​P(x)⎣⎡​y∈Y∑​P(y∣x)logP(y∣x)1​⎦⎤​=x∈X∑​y∈Y∑​P(x)P(y∣x)logP(y∣x)1​=x∈X∑​y∈Y∑​P(x,y)logP(y∣x)1​=−ElogP(Y∣X)​

五、相对熵(KL散度)

Kullback-Leibler Divergence,即K-L散度,是一种量化两种概率分布P和Q之间差异的方式,又叫相对熵。在概率学和统计学上,我们经常会使用一种更简单的、近似的分布来替代观察数据或太复杂的分布。K-L散度能帮助我们度量使用一个分布来近似另一个分布时所损失的信息量。

设p为观察得到的概率分布,q为另一分布来近似p,则p、q的K-L散度为:
D K L ( p ∥ q ) = ∑ i p ( x i ) ⋅ [ log ⁡ 1 q ( x i ) − log ⁡ 1 p ( x i ) ] = ∑ i p ( x i ) ⋅ log ⁡ p ( x i ) q ( x i ) D_{K L}(p \| q)=\sum_{i} p\left(x_{i}\right) \cdot\left[\log \frac{1}{q\left(x_{i}\right)}-\log \frac{1}{p\left(x_{i}\right)}\right]=\sum_{i} p\left(x_{i}\right) \cdot \log \frac{p\left(x_{i}\right)}{q\left(x_{i}\right)} DKL​(p∥q)=i∑​p(xi​)⋅[logq(xi​)1​−logp(xi​)1​]=i∑​p(xi​)⋅logq(xi​)p(xi​)​
性质:

  • 非负性
  • 不对称性,即 K L ( P ∥ Q ) ≠ K L ( Q ∥ P ) KL(P\|Q) \neq KL(Q\|P) KL(P∥Q)​=KL(Q∥P)

六、交叉熵(cross entropy)

也是用来衡量两个分布之间的差异性。
H C E ( p , q ) = ∑ i p ( x i ) ⋅ log ⁡ 1 q ( x i ) H_{C E}(p, q)=\sum_{i} p\left(x_{i}\right) \cdot \log \frac{1}{q\left(x_{i}\right)} HCE​(p,q)=i∑​p(xi​)⋅logq(xi​)1​
显然交叉熵是相对熵的第一部分,因为在通常情况下我们是已知第二部分​,即第二部分是常量,此时交叉熵和相对熵是一个线性关系,在考虑计算量的情况下,所以我们通常都用这部分交叉熵来做。

为什么在神经网络中使用交叉熵损失函数,而不是K-L散度?
K-L散度=交叉熵-熵,即 D K L ( p ∥ q ) = H ( p , q ) − H ( p ) D_{K L}(p \| q)=H(p, q)-H(p) DKL​(p∥q)=H(p,q)−H(p)。
在神经网络所涉及到的范围内, H ( p ) H(p) H(p)不变,则 D K L ( p ∥ q ) D_{K L}(p \| q) DKL​(p∥q)等价 H ( p , q ) H(p,q) H(p,q)。

七、JS散度(Jensen-Shannon divergence)

为了解决相对熵(KL散度不对称的问题),对KL散度进行变体。一般地,JS散度是对称的,其取值是 0 到 1 之间。
如果两个分布 P,Q 离得很远,完全没有重叠的时候,那么KL散度值是没有意义的,而JS散度值是一个常数(缺陷)。这在学习算法中是比较致命的,这就意味这这一点的梯度为 0,梯度消失了,无法更新。
D J S ( p ∥ q ) = 0.5 ∗ [ D K L ( p ∥ p + q 2 ) + D K L ( q ∥ p + q 2 ) ] = 0.5 ∗ [ ∑ i p ( x i ) ⋅ log ⁡ 2 p ( x i ) p ( x i ) + q ( x i ) + ∑ i q ( x i ) ⋅ log ⁡ 2 q ( x i ) p ( x i ) + q ( x i ) ] \begin{aligned} D_{J S}(p \| q) &=0.5 *\left[D_{K L}\left(p \| \frac{p+q}{2}\right)+D_{K L}\left(q \| \frac{p+q}{2}\right)\right] \\ &=0.5 *\left[\sum_{i} p\left(x_{i}\right) \cdot \log \frac{2 p\left(x_{i}\right)}{p\left(x_{i}\right)+q\left(x_{i}\right)}+\sum_{i} q\left(x_{i}\right) \cdot \log \frac{2 q\left(x_{i}\right)}{p\left(x_{i}\right)+q\left(x_{i}\right)}\right] \end{aligned} DJS​(p∥q)​=0.5∗[DKL​(p∥2p+q​)+DKL​(q∥2p+q​)]=0.5∗[i∑​p(xi​)⋅logp(xi​)+q(xi​)2p(xi​)​+i∑​q(xi​)⋅logp(xi​)+q(xi​)2q(xi​)​]​

八、互信息

定义: 互信息(Mutual Information)是信息论里一种有用的信息度量,它可以看成是一个随机变量中包含的关于另一个随机变量的信息量,或者说是一个随机变量由于已知另一个随机变量而减少的不确定性。
数学上的解释:
随机变量 X,另一个随机变量 Y,他们之间的互信息是:
I ( X ; Y ) = H ( X ) − H ( X ∣ Y ) I(X; Y) = H(X) - H(X | Y) I(X;Y)=H(X)−H(X∣Y)
H ( X ) H(X) H(X)是X的信息熵
H ( Y ) H(Y) H(Y)是Y的信息熵
H ( X ∣ Y ) H(X | Y) H(X∣Y)是已知Y的条件下,X的信息熵
用图来表示是这样的:

公式为:
I ( X ; Y ) = ∫ X ∫ Y P ( X , Y ) log ⁡ P ( X , Y ) P ( X ) P ( Y ) = ∫ X ∫ Y P ( X , Y ) log ⁡ P ( X , Y ) P ( X ) − ∫ X ∫ Y P ( X , Y ) log ⁡ P ( Y ) = ∫ X ∫ Y P ( X ) P ( Y ∣ X ) log ⁡ P ( Y ∣ X ) − ∫ Y log ⁡ P ( Y ) ∫ X P ( X , Y ) = ∫ X P ( X ) ∫ Y P ( Y ∣ X ) log ⁡ P ( Y ∣ X ) − ∫ Y log ⁡ P ( Y ) P ( Y ) = − ∫ X P ( X ) H ( Y ∣ X = x ) + H ( Y ) = H ( Y ) − H ( Y ∣ X ) \begin{aligned} I(X ; Y) &=\int_{X} \int_{Y} P(X, Y) \log \frac{P(X, Y)}{P(X) P(Y)} \\ &=\int_{X} \int_{Y} P(X, Y) \log \frac{P(X, Y)}{P(X)}-\int_{X} \int_{Y} P(X, Y) \log P(Y) \\ &=\int_{X} \int_{Y} P(X) P(Y \mid X) \log P(Y \mid X)-\int_{Y} \log P(Y) \int_{X} P(X, Y) \\ &=\int_{X} P(X) \int_{Y} P(Y \mid X) \log P(Y \mid X)-\int_{Y} \log P(Y) P(Y) \\ &=-\int_{X} P(X) H(Y \mid X=x)+H(Y) \\ &=H(Y)-H(Y \mid X) \end{aligned} I(X;Y)​=∫X​∫Y​P(X,Y)logP(X)P(Y)P(X,Y)​=∫X​∫Y​P(X,Y)logP(X)P(X,Y)​−∫X​∫Y​P(X,Y)logP(Y)=∫X​∫Y​P(X)P(Y∣X)logP(Y∣X)−∫Y​logP(Y)∫X​P(X,Y)=∫X​P(X)∫Y​P(Y∣X)logP(Y∣X)−∫Y​logP(Y)P(Y)=−∫X​P(X)H(Y∣X=x)+H(Y)=H(Y)−H(Y∣X)​
当 X 和 Y 独立时, P ( X , Y ) = P ( X ) P ( Y ) P(X,Y) = P(X) P(Y) P(X,Y)=P(X)P(Y),因此: I ( X ; Y ) = 0 I(X ; Y)=0 I(X;Y)=0


参考资料:
https://blog.csdn.net/coolyuan/article/details/107564080
https://zhuanlan.zhihu.com/p/240676850
https://www.jianshu.com/p/43318a3dc715
https://blog.csdn.net/park_bomu/article/details/108829270

信息论的一些基础概念相关推荐

  1. 机器学习的9个基础概念和10种基本算法总结

    https://blog.csdn.net/libaqiangdeliba/article/details/41901387 1.基础概念: (1) 10折交叉验证:英文名是10-fold cross ...

  2. TCP/IP基础概念及通信过程举例

    TCP/IP基础概念及通信过程举例 出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络.后来为了验证分组交换技术的实用性,ARPANET出现了,并且 ...

  3. Python+Dash快速web应用开发——基础概念篇

    作者:费弗里 来源:Python大数据分析 ❝本文示例代码与数据已上传至https://github.com/CNFeffery/DataScienceStudyNotes ❞ 1 简介 这是我的新系 ...

  4. 理解 angular2 基础概念和结构 ----angular2系列(二)

    前言: angular2官方将框架按以下结构划分: Module Component Template Metadata Data Binding Directive Service Dependen ...

  5. 数据库基础笔记(MySQL)1 —— 基础概念

    (写算法题目把自己心态搞崩了,休息两天顺便把之前学的数据库手写笔记记录在网上方便查阅,因为只是自己学的时候做的笔记,如果有错误欢迎大家指正,过两天再重回算法的怀抱哈哈) 如何下载配置 这个感觉视频讲的 ...

  6. python 舍去小数_零基础小白Python入门必看——编程基础概念

    1. 程序的构成 程序由模块组成,一个模块对应python的源文件 ,一般后缀为:.py 模块由语句构成 语句是python程序的构造单元,用于创建对象.变量赋值.调用函数.控制语句等. 2. 对象 ...

  7. J2EE学习笔记三:EJB基础概念和知识 收藏

    J2EE学习笔记三:EJB基础概念和知识 收藏 EJB正是J2EE的旗舰技术,因此俺直接跳到这一章来了,前面的几章都是讲Servlet和JSP以及JDBC的,俺都懂一些.那么EJB和通常我们所说的Ja ...

  8. UC伯克利教授Stuart Russell人工智能基础概念与34个误区

    来源:数据简化DataSimp 数据简化DataSimp导读:UC伯克利教授StuartRussell人工智能基础概念与34个误区,Russell是加州大学伯克利分校人工智能系统中心创始人兼计算机科学 ...

  9. linux基础概念和个人笔记总结(6)

    防伪码:曾经梦想仗剑走天涯,回过头,却发现还是放不下家的牵挂 后续理论的验证图文详解,我会更新,希望大家可以参考 第十一章 FTP文件传输服务 1.FTP连接 控制连接:tcp21端口,用于发送ftp ...

最新文章

  1. 机器学习四剑客1——Numpy
  2. Gridview导出到Excel,Gridview中的各类控件,Gridview中删除记录的处理
  3. mac idea用自带的maven还是_免费版的 IDEA 为啥不能使用 Tomcat ?
  4. angularjs 添加拦截器
  5. java 枚举类型 构造函数及用法
  6. 一手指天,一手指地,开!
  7. 怎么用python读取大文件_使用Python读取大文件的方法
  8. SpringBoot-(1)-IDEA创建SpringBoot项目并运行访问接口
  9. python怎么把图片变成字符_用Python把图片变成字符画
  10. JellyViewPager
  11. 洛谷 1429 平面最近点对(加强版) 快排 非点分治或kdtree
  12. 【网易云课堂---轻松读书:番茄工作法(最后)】
  13. configure: error: /usr/include/openssl is a bad --with-openssl prefix
  14. janusgraph 可视化工具
  15. JAVA学习 第5天
  16. 解决NintendoSwitch安装SXPro后开机长期蓝屏问题
  17. C# 使用HTMLhelp生成chm文件添加搜索并解决搜索找不到主题的问题
  18. 基于FPGA的微观磁共振实验设备开发
  19. 转:移动互联:没有新故事没有新大佬
  20. 【优化】拉格朗日(Lagrange)乘子法超简说明

热门文章

  1. 空气炸锅能从“网红”到“长红”吗?
  2. python三个数从小到大排序
  3. 网易云音乐ios停更_20(更多)网站下载免费的创用CC音乐
  4. 论文阅读:Hierarchical Attention Transfer Network for Cross-Domain Sentiment Classification
  5. 计算机控制系统开发,浓密过程计算机控制系统设计与开发
  6. 【渝粤教育】国家开放大学2018年秋季 8181-21T (1)老年保健按摩 参考试题
  7. Android java synchronized原理
  8. Amazon Personalize 个性化效果评估,从准确性到多样性、新颖性和偶然性
  9. 随性而为_2015/08/21 周五 晴
  10. 我在北京这几年(全)