博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
信息论随笔2: 交叉熵、相对熵
阅读量:4707 次
发布时间:2019-06-10

本文共 839 字,大约阅读时间需要 2 分钟。

接上文:

 

参考以下:

如何通俗的解释交叉熵与相对熵;

 

交叉熵

一个变量X,可能有多种取值,每个取值结果对应一个事件,对于一个随机事件x,其真实概率分布为p(x),从数据中得到的概率分布为q(x),则交叉熵为:

 \( H(p, q) = -\sum\limits_{x} p(x)log_{2}q(x) \)

交叉熵反映的是概率分布q所估计的变量X的信息量;

相对的,真实分布p所表达的变量X的真实信息量是信息熵H(X),但这里我们在讨论的是对同一个变量X的p、q两种概率分布所带来的信息量差异,因而只将p、q当做变量,信息熵用H(p)表示;

 

相对熵

根据可知,\( H(p, q) >= H(p) \),当q为真实分布p时取等号;

由概率分布q估计所多出来的冗余信息量,即为相对熵:

\( D(p||q) = H(p,q) - H(p) = \sum\limits_{x} p(x)log_{2}\frac{p(x)}{q(x)} \)

相对熵又称KL散度;

相对熵也用来衡量相关性,但和变量的互信息不同,它用来衡量两个取值为正数的函数的相似性。在这里,它描述q分布与p分布的相似性;

 

因为\( H(p,q)=H(p)+D_{KL}(p||q) \),真实分布的信息熵H(p)固定不变,因而交叉熵可以用做机器学习中的损失函数;

 

 

例子:

含有4个字母(A,B,C,D)的数据集中,真实分布p=(1/2, 1/2, 0, 0),即A和B出现的概率均为1/2,C和D出现的概率都为0。计算H(p)为1,即只需要1位编码即可识别A和B。如果使用分布Q=(1/4, 1/4, 1/4, 1/4)来编码则得到H(p,q)=2,即需要2位编码来识别A和B(当然还有C和D,尽管C和D并不会出现,因为真实分布p中C和D出现的概率为0);
多出来的这1位编码就是分布Q估计所引入的冗余信息量即相对熵;
 

转载于:https://www.cnblogs.com/ZisZ/p/9083914.html

你可能感兴趣的文章
IT常用单词
查看>>
拓扑排序
查看>>
NYOJ--32--SEARCH--组合数
查看>>
gulpfile 压缩模板
查看>>
【34.14%】【BZOJ 3110】 [Zjoi2013]K大数查询
查看>>
【 henuacm2016级暑期训练-动态规划专题 A 】Cards
查看>>
第五篇:白话tornado源码之褪去模板的外衣
查看>>
设备常用框架framework
查看>>
bootstrap模态框和select2合用时input无法获取焦点(转)
查看>>
MockObject
查看>>
BZOJ4516: [Sdoi2016]生成魔咒(后缀自动机)
查看>>
查看手机已经记住的WIFI密码
查看>>
最新版IntelliJ IDEA2019 破解教程(2019.08.07-情人节更新)
查看>>
C# 两个datatable中的数据快速比较返回交集或差集
查看>>
关于oracle样例数据库emp、dept、salgrade的mysql脚本复杂查询分析
查看>>
adb shell am 的用法
查看>>
iOS10 UI教程视图和子视图的可见性
查看>>
FindChildControl与FindComponent
查看>>
中国城市json
查看>>
android下载手动下载Android SDK
查看>>