信息量理解、信息熵公式的推导
1, 了解信息熵先弄明白信息量的概念
信息量是指信息多少的量度。
信息量有两个重要的特点:
(1)一个事件的信息量与这个事件发生的概率是呈负相关的
。这个很好理解,就拿生活中的例子来说,越大概率事件所涵盖的信息量越小,如:晴天的早上太阳从东边升起,这可以说是一个必然事件,给我们带来的信息几乎为零。如:国足踢进了世界杯,对于这种几乎不可能的小概率事件,人们估计都会想把它搞清楚,想把他们搞清楚需要的信息很多,比如谁踢进的球,他们赛场上表现如何,犯规了吗等等…变量的不确定性越大,把它搞清楚所需要的信息量也就越大,这很容易理解。
(2)如果两个事件X、Y的发生没有相互影响的关系(两事件不相关),则信息量满足可加性:I(X,Y) = I(X)+ I(Y)
。
我们知道两个不相关事件X、Y发生的概率满足公式:P(X,Y)= P(X)* P(Y)。
由此我们想找到描述信息量与概率关系的函数公式,很显然log对数函数满足我们的需要,所以我们想出了信息量与概率的函数雏形:I(X) = log(P(X))。
此时我们需要思考一下,我们前面讲到信息量的性质(1)“一个事件的信息量与其发生的概率是呈负相关的”,由于log对数函数在定义域内是单调递增的,很显然我们的公式雏形不满足一点。这好办,前面加个符号就行了呗~ 即:I(X) = -log(P(X))。这下满足了吧!
由此我们得出了信息量与概率的函数:I(X) = -log(P(X))
。我们可以简化一下:I = -logP
。
2,了解了信息量的含义之后,我们来看一下何为信息熵
信息熵可以理解为平均信息量。
假设有一个事件D有n种可能情况记为:
发生的概率分别记为:
D事件的信息熵,我们用Info(D)来表示,因为信息熵是描述平均信息量的,所以很容易得出计算公式为:又因为
( 注意:这里log对数函数底数取2,是因为信息用二进位编码
)
代入得信息熵公式为:
信息量理解、信息熵公式的推导相关推荐
- 信息量和信息熵的理解
信息量和信息熵的概念最早是出现在通信理论中的,其概念最早是由信息论鼻祖香农在其经典的paper<A Mathematical Theory of Communication>中提出的.如今 ...
- 理解 信息量、信息熵 和 信息增益
前言 最近学习机器学习.决策树一节有两个核心概念:信息量和信息熵.查了一些资料,将理解记录在此. 信息量 试着将世界上的一些习以为常的东西量化,是提高生活效率和质量的一大核心方式.和人聊天,看电影,战 ...
- 12_信息熵,信息熵公式,信息增益,决策树、常见决策树使用的算法、决策树的流程、决策树API、决策树案例、随机森林、随机森林的构建过程、随机森林API、随机森林的优缺点、随机森林案例
1 信息熵 以下来自:https://www.zhihu.com/question/22178202/answer/161732605 1.2 信息熵的公式 先抛出信息熵公式如下: 1.2 信息熵 信 ...
- 通俗理解信息熵、条件熵、信息增益
转自知乎 https://zhuanlan.zhihu.com/p/26486223 ,https://zhuanlan.zhihu.com/p/26551798 作者:忆臻 主页:https://w ...
- 一文读懂信息量、信息熵、相对熵(KL散度)和交叉熵
在人工智能深度学习的应用中,损失函数绝对是模型网络学习质量的关键.我们使用损失函数来表示的真实值与预测值之间的距离,进而指导模型的收敛方向.对于标量来说,我们能够很容易想到使用方差来描述误差.那么,如 ...
- 信息量、信息熵、KL散度、交叉熵
一.信息量 定义: 香农(C. E. Shannon)信息论应用概率来描述不确定性.信息是用不确定性的量度定义的.一个消息的可能性愈小,其信息愈多:而消息的可能性愈大,则其信息量愈少:事件出现的概率小 ...
- 信息量、信息熵、交叉熵、KL散度、JS散度、Wasserstein距离
前两篇介绍了目标检测中的回归损失函数,本来这篇打算介绍目标检测中的分类损失函数.但是介绍classification loss function自然绕不过交叉熵,所以还是简单的把信息论中的一些概念在这 ...
- 信息量、信息熵、条件熵、KL散度、交叉熵
文章目录 1. 信息量 2. 信息熵 3. 条件熵 4. 交叉熵与KL散度 4.1 公式推导 1. 信息量 为了理解这个概念,我们先以两个具体的事件为例: 事件1:德国队获得世界杯冠军. 事件2: ...
- 自动控制原理之如何理解梅森公式(内附MATLAB求解传递函数程序)
文章目录 一道题 总结与归纳 最近在复习自动控制原理,想看看自控的题能不能用matlab来简单地做出来,想到了一个理解梅森公式的角度,记录如下: 一道题 首先我们来看到一道题: 这题看上去挺简单的,但 ...
最新文章
- 在Ubuntu 14.04 64bit上安装思维导图工具XMind
- CVPR 2021 妆容迁移 CPM SCGAN
- iOS仿抖音节拍界面、Swift,MVVM架构完整项目、日历demo、滚动切换分类等源码
- JQuery Attributes 方法说明
- springboot(七):springboot+mybatis多数据源最简解决方案
- Django--form验证及错误处理
- 乳化液稳定剂php,乳化液稳定剂PHP对小于0.1mm煤泥浮选的影响
- 热缓存 IHotCache --ESBasic 可复用的.NET类库(19)
- 通达信波段王指标公式主图_通达信股票波段王+精准买卖提示主图指标源码公式_通达信指标公式_指标公式网...
- 哲理故事300篇 下
- MASM32编写TcpStatC再进阶 显示PID和对应进程说明符
- 【内网穿透笔记】FTP映射出现227 Entering Passive Mode错误命令原因及解决方法
- Android 端的基于TCP的小型服务器_超级简单
- 爱的十个秘密--11.信任的力量
- groupByKey与reduceByKey区别
- win10 oracle11g 乱码,小编教你解决win10系统出现汉字乱码的处理办法
- IPAD 安装win8 苏菲安装Mac OS iphone安装安卓
- 毕业入职2个月小感悟
- 环境因素对车体的影响
- 中国举办的世界园艺博览会概览-web数据可视化(d3.js path)
热门文章
- Linux对main未定义引用,当对体量使用实时时,对main的未定义引用
- 机器学习:随机森林原理 OOB等
- Solidity入门级别|用智能合约实现房屋贷款系统
- eos 区块链 java 开发_EOS区块链用什么语言开发?
- 关于QT4的一些学习杂记
- 堪比N6705和Power Monitor AAA10F 的高精度_高采样率_低功耗测试电源mPower1203
- java.lang.Long常用方法
- android ocr 中文版,android ocr
- 基于ARM的嵌入式Linux开发平台
- Shader学习之Cg语言二(Cg数据类型)