自然语言中的重要概念——熵(Entropy)
一、背景
熵是热力学中的一个重要的概念,最早是由香农(Claude Shannon)将熵应用于信息的度量。
熵(Entropy)是描述事物无序性的一个重要的参数,熵越大则无序性越强,同时,熵表示一个随机变量的不确定性。
二、熵
1、信息熵
香农指出,一条信息的信息量和它的不确定性之间有着直接的关系。因此可以使用信息熵来描述信息量的多少。
信息熵的定义为:设一个随机变量 X X,其可能的mm种取值为 x1,x2,⋯,xm x_1,x_2,\cdots ,x_m,对于每一种取值的概率为: p1,p2,⋯,pm p_1,p_2,\cdots ,p_m,那么随机变量 X X的不确定度,即信息熵,用H(X)H\left ( X \right )表示:
H\left ( X \right )=\sum_{i=1}^{m}p_ilog_2\frac{1}{p_i}=-\sum_{i=1}^{m}p_ilog_2p_i
信息熵表示的是随机变量 X X可能的变化,若随机变量的变化越多,那么其信息量越大。而与随机变量的具体取值无关,只与其值的类别以及每种类别的概率有关。
2、条件熵
条件熵(Conditional Entropy)的定义为:设两个随机变量XX, Y Y,在XX已知的前提下, Y Y的熵,定义为YY的条件熵,用 H(Y∣X) H\left ( Y\mid X \right )表示:
H\left ( Y\mid X \right )=-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )log_2p\left ( y_j\mid x_i \right )
对于上述的条件熵的定义,可由下面的推理得到:
\begin{matrix} H\left ( Y\mid X \right )=p\left ( x_1 \right )\cdot H\left ( Y\mid X=x_1 \right )+\cdots +p\left ( x_m \right )\cdot H\left ( Y\mid X=x_m \right )\\ =\sum_{i=1}^{m}p\left ( x_i \right )\cdot H\left ( Y\mid X=x_i \right )\\ =-\sum_{i=1}^{m}p\left ( x_i \right )\cdot \left ( \sum_{j=1}^{n}p\left ( y_j\mid x_i \right )\cdot log_2p\left ( y_j\mid x_i \right ) \right )\\ =-\sum_{i=1}^{m}\sum_{j=1}^{n}p\left ( y_j, x_i \right )\cdot log_2p\left ( y_j\mid x_i \right )\\ =-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )log_2p\left ( y_j\mid x_i \right ) \end{matrix}
3、联合熵
联合熵和联合分布的概念类似,联合熵指的是多个随机变量的熵。联合熵的定义为:设两个随机变量 X X,YY, p(xi,yj) p\left ( x_i,y_j \right )表示联合概率,则联合熵表示的是随机变量 X X和YY共同携带的信息量,用 H(X,Y) H\left ( X,Y \right )表示:
H\left ( X,Y \right )=-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )log_2p\left ( x_i,y_j \right )
其中,条件熵,联合熵和熵之间的关系为:
H\left ( Y\mid X \right )=H\left ( X,Y \right )-H\left ( X \right )
对于上式的证明如下:
\begin{matrix} H\left ( X,Y \right )-H\left ( X \right )=-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )log_2p\left ( x_i,y_j \right )+\sum_{i=1}^{m}p\left ( x_i \right )log_2p\left ( x_i \right )\\ =-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )log_2p\left ( x_i,y_j \right )+\sum_{i=1}^{m}\left ( \sum_{j=1}^{n}p\left ( x_i,y_j \right ) \right )\cdot log_2p\left ( x_i \right )\\ =-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )\cdot \left ( log_2p\left ( x_i,y_j \right) -log_2p\left ( x_i \right ) \right )\\ =-\sum_{x_i,y_j}^{m,n}p\left ( x_i,y_j \right )log_2p\left ( y_j\mid x_i \right )=H\left ( Y\mid X \right ) \end{matrix}
对于联合熵,有一些性质,如下所示:
- H(X,Y)⩾H(X) H\left ( X,Y \right )\geqslant H\left ( X \right )
- H(X,Y)⩽H(X)+H(Y) H\left ( X,Y \right )\leqslant H\left ( X \right )+H\left ( Y \right )
- H(X,Y)⩾0 H\left ( X,Y \right )\geqslant 0
4、相对熵
相对熵,又称为交叉熵或者KL距离或者KL散度。主要是用来度量两个概率分布之间的差异程度。假设两个概率分布 P(x) P\left ( x \right )和 Q(x) Q\left ( x \right ),用 D(P∥Q) D\left ( P\parallel Q \right )表示两个分布之间的KL散度:
D\left ( P\parallel Q \right )=\sum_{x\in X}P\left ( x \right )\cdot log_2\frac{P\left ( x \right )}{Q\left ( x \right )}
当两个分布完全相同时,此时KL散度为 0 0。
三、互信息
KL距离衡量的是相同的事件空间里的两个事件的相似程度,而互信息衡量的是不同事件空间中的两个信息的相关性。设两个随机变量XX和 Y Y,互信息为I(X,Y)I\left ( X,Y \right ):
I\left ( X,Y \right )=\sum_{i=1}^{m}\sum_{j=1}^{n}p\left ( x_i,y_j \right )\cdot log_2\frac{p\left ( x_i,y_j \right )}{p\left ( x_i \right )p\left ( y_j \right )}
互信息就是随机事件 X X的熵H(X)H\left ( X \right ),以及在给定随机变量 Y Y的条件下的条件熵H(X∣Y)H\left ( X\mid Y \right )之间的差异,即:
I\left ( X,Y \right )=H\left ( X \right )-H\left ( X\mid Y \right )
由上述的定义可知,互信息与信息增益等价。
参考文献
- 数学之美
自然语言中的重要概念——熵(Entropy)相关推荐
- 直播 | AAAI 2021:自然语言中token-aware的虚拟对抗样本训练
「AI Drive」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和 ...
- 信息安全—密码学信息熵信息理论基础—熵的概念(熵、联合熵、条件熵、平均互信息)
数学基础:概率论乘法法则 两个事件相互独立:P(A∩B) = P(A)×P(B) · 意思是事件A和事件B同时发生的概率 = 事件A发生的概率 × 事件B发生的概率 · · 举个栗子:掷两枚硬币硬币同 ...
- 熵(Entropy),交叉熵(Cross-Entropy),KL-松散度(KL Divergence),似然(Likelihood)
1.介绍: 我们如何去衡量y,y`的接近程度? 在这里我们介绍一下一种衡量方式交叉熵(Cross-Entropy),然后说明一下为什么这种方式适用于分类问题. 2.熵(Entropy): 熵的概念来自 ...
- 熵 Entropy -- 香农熵、相对熵、交叉熵、条件熵
快速概览: 香农熵 -- 熵的定义 交叉熵 -- 一般可做为分类模型的损失函数 (交叉熵是由相对熵转化过来的,交叉熵 = 相对熵 - 熵 ),对于采样的数据(训练集,熵H 是定值,故交叉熵 和 相对熵 ...
- 使用Python计算离散随机变量的熵(Entropy)
一.离散随机变量 设为离散型随机变量的所有可能值:而是取的概率,即 则称为(离散)随机变量的概率分布,而且它满足下面的条件: 在现实中,通常这个随机变量的取值个数是可数的.这里假设随机变量的取值个数为 ...
- 一文懂熵Entropy
本文翻译自https://naokishibuya.medium.com/demystifying-entropy-f2c3221e2550 我们常常听到[熵增],[熵减]等概念.那么熵是什么? 熵这 ...
- 现场丨2017中国计算机大会(CNCC2017)之沈向洋演讲:自然语言中的描述、对话和隐喻
最近我一直讲的一句话就是"得语言者,得天下",只有我们切身明白自然语言是怎么回事才能够真正把人工智能讲清楚. 在这里,我侧重三方面内容,主要讲讲如何一步步深入研究自然语言: 第一步 ...
- 计算机语言中函数的概念,什么是函数,什么是公式,两者的概念讲解及比较
在这个VBA与GO语言的平台上,我一直在不遗余力地推广我的观点:这个平台是主要讲VBA语言,但这里的VBA语言不单单只是抽象的代码,大多数是实战的例子.这些例子是以函数为载体,以GO思想为指导.无论函 ...
- echarts词云图形状_词云图在自然语言中的应用,可以如此炫酷!
词云图,也叫文字云,是对文本中出现频率较高的"关键词"予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨. 一.在线生成词云图 1 ...
最新文章
- Java对List对象进行排序
- 《人月神话》(P11)为舍弃而计划
- Win32+API学习笔记:创建基本的窗口控件
- [html] 怎样在文本框中禁用中文输入法?
- 深度学习(四十六)Adversarial Autoencoders学习笔记
- 个人看法---团队合作
- raise NotImplementedError
- 【渝粤教育】广东开放大学 操作系统原理与应用 形成性考核 (46)
- 功率 dbm 和 mw 的换算
- 微信授权登陆服务器,微信公众号开发流程--微信第三方授权登陆流程
- 浏览器插件——轻松、快速下载网站源代码
- 1万小时后,我从外包走进了字节跳动,现在出了一本书,文末送书!
- c语言 一帮一题目,【精品资料】大学优秀学子风采录.doc
- 前端技术之SVG图片(图标)创建
- 小程序获取用户openid,php获取微信小程序openid的方法
- 论文的主要观点怎么写?
- 哇呼IM即时通讯系统——技术解析
- 华为又一重拳!迄今为止最强5G基带芯片、全球最快CPE正式发布!...
- 【转】2023年Java学习路线图-黑马程序员
- 百度网盘不限速方法2020_亿寻——百度网盘不限速方法
热门文章
- jpa查询异常InvalidDataAccessApiUsageException
- 关于RGB屏调试的一些知识
- ERP管理系统源码 ERP系统源码
- mysql alter table delete column_MySQL 添加列,修改列,删除列 详细说明
- outlook接收邮件后右下角没有弹窗通知问题解决
- 如何在SQL Server 2005 中存储立方米
- 2019中职计算机平面设计技能大赛,中职技能大赛计算机平面设计项目在郑州43中举行--郑州教育信息网...
- 关于SSL安全套接层协议
- 数据库锁表,杀死进程
- 仿制《58同城》首页滑动界面