什么是信息熵?香农利用信息熵回答了什么问题_香农定律

什么是信息熵?香农利用信息熵回答了什么问题_香农定律第九个知识点:香农(Shannon)定义的熵和信息是什么这是计算机理论的最后一篇.我们讨论信息理论的基础概念,什么是香农定义的熵和信息.信息论在1948年被ClaudeE.Shannon建立.信

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

第九个知识点:香农(Shannon)定义的熵和信息是什么

这是计算机理论的最后一篇.我们讨论信息理论的基础概念,什么是香农定义的熵和信息.

信息论在1948年被Claude E.Shannon建立.信息论最开始被应用于信号处理,但是经过几十年的发展,它现在已经被应用到各个学科了.这篇文章尝试简洁的介绍两个基础的概念,熵(entropy)和信息(information).如果你对这个感兴趣,我个人推荐你在这里学习更多.[1]

熵是衡量一个或者多个变量不确定性的度量.

假设我们调查人们打开浏览器的时候打开的第一个网页.我们用抽样的方法将测试人员分出两组.四个来自Bristol Cryptogroup的密码学研究人员和在Bristol客车站被抽取的四个乘客.让我们做一个激进的假设,假设四个密码学研究者第一次都会访问http://bristolcrypto.blogspot.co.uk/ .

现在让我们评价一下他们的答案:显然,密码学家的答案是相当确定的(低不确定性),而如果答案来自乘客,则很难猜到(高不确定性).换句话说,我们说密码学家组的答案熵低,而乘客组的答案熵高.

因此香农的一个最著名的贡献就是香农熵的定义:

\(H = – \sum_ip_ilog_bp_i\)

其中\(p_i\)是一个之前答案出现的可能性.在计算机科学中,我们通常使用\(b = 2\)(bits).

如果我们计算熵值,我们就有

\(H_{cryptographer} = – \sum_i^41log_21=0\)

\(H_{passenger} = -\sum_1^4log_2(1/4)=2\)

所以乘客的答案的熵确实比密码学家的高!

信息

形式上,Shannon信息的定义在[2]中给出:

信息是衡量一个人在选择信息时的选择自由.

为了解释这个问题,让我们对前面的事例做一个小的修改.让我们从Bristol火车站再抓四个乘客,假设他们的答案也是随机门户,就像长途汽车站的乘客一样.

问题是:给定一个答案\(y\),你能说答案来自哪一组?

如果\(y\)http://bristolcrypto.blogspot.co.uk/,那么我们马上就可以知道答案来自于我们的密码编码员组.但是如果y是随机的,我们就会遇到困难.因此我们就可以说http://bristolcrypto.blogspot.co.uk/包含比随机的更多的信息.

因此它们跟熵有什么关系?

扩展熵的定义,我们将条件熵定义为:

\[H(Y|X) = sum_{x \in X}p(x)H(Y|X=x) \]

这个公式描述了当\(X=x\)条件\(Y\)的熵.更明确的说,因为熵是一个变量的不确定性.因此,先前条件熵的定义实际上是当给定条件为”线索”(条件)\(X\)的不确定的\(Y\).

观察:考虑两个变量\(X\)\(Y\).如果\(X\)包括\(Y\)的最小信息,然后给出一个额外的\(X\)的精确值对我们推断\(Y\)的值应该没有多大帮助,也就是说,它并没有明显的降低\(Y\)的不确定性.另一方面,如果\(X\)包含了\(Y\)的基本信息.那么当\(X\)给定时,\(Y\)的熵应该是低了很多.因此,条件熵可以看作是看作是对\(X\)\(Y\)的信息是一种合理的度量!

另一个重要的指标就是互信息(Mutual Information).它是两个变量测量的度量.一种定义它的方法就是熵的减少值.

\(I(X;Y) = H(X)-H(X|Y)=H(Y)-H(Y|X)\)

密码学实例

信息论的概念广泛应用于密码学.一个典型的例子就是把密码学看作一个信道,明文是输入,密文是输出.侧信道的研究也得益于信息论.

[1] Thomas M. Cover and Joy A. Thomas. Elements of Information Theory
​ 2nd Edition. Wiley-Interscience, 2 edition, July 2006.

[2] S. Vajda, Claude E. Shannon, and Warren Weaver. The mathematical
​ theory of communication. The Mathematical Gazette, 34(310):312+,
​ December 1950.

[3] http://en.wikipedia.org/wiki/Entropy_(information_theory)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/167928.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • strstr函数用法_malloc函数的用法举例

    strstr函数用法_malloc函数的用法举例strstr编辑strstr(str1,str2)函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。C语言函数编辑

  • 高通MSM8953 LK阶段配置使用I2C8[通俗易懂]

    高通MSM8953 LK阶段配置使用I2C8[通俗易懂]项目场景: 因为项目需要,需要在高通MSM8953平台的LK阶段使用I2C8设备。但是MSM8953平台LK阶段并没有配置好I2C8接口,因此调试I2C8成为当务之急。本文只介绍在LK阶段配置使用I2C5的方法。调试需要:1、文档:BAMLow-SpeedPeripherals(BLSP)UserGuide查看文档,有I2C介绍如下:I2c3对应的物理地址为0x78B7000,中断IRQ:97,时钟信号clk:clk_gcc_blsp1_qup3_i2c_apps_clk

    2022年10月19日
  • fedora14虚拟机安装教程_vmware上安装ubuntu

    fedora14虚拟机安装教程_vmware上安装ubuntuSunVirtualBox虚拟机下安装Fedora12Linux软件准备:硬件:32bitCPU本地系统:WinXPSP2虚拟机版本:SunVirtualBox 3.1.4Fedora12:i386安装包操作步骤:1、安装虚拟机SunVirtualBox 3.1.4略 2、设置虚拟电脑>新建虚拟电脑,名称随意,选择操作系统Linux,选择版

  • 服务器安装黑苹果系统,黑苹果 单系统安装教程

    服务器安装黑苹果系统,黑苹果 单系统安装教程黑苹果单系统安装教程[2021-02-1509:58:46]简介:php去除nbsp的方法:首先创建一个PHP代码示例文件;然后通过“preg_replace(“/(\s|\&nbsp\;| |\xc2\xa0)/”,””,strip_tags($val));”方法去除所有nbsp即可。推荐:《PHP视频教中国网科技7月24日讯今日,工信部发布今年第三批侵害用户权益行为的A…

  • Vue进阶(三十六):created() 详解「建议收藏」

    Vue进阶(三十六):created() 详解「建议收藏」这次给大家带来vue.js中created方法的使用详解,使用vue.js中created方法的注意事项有哪些,下面就是实战案例,一起来看一下。这是它的一个生命周期钩子函数,就是一个vue实例被生成后调用这个函数。一个vue实例被生成后还要绑定到某个html元素上,之后还要进行编译,然后再插入到document中。每一个阶段都会有一个钩子函数,方便开发者在不同阶段处理不同逻辑。一般可以在creat…

  • 虚拟存储管理_虚拟存储管理的基本条件

    虚拟存储管理_虚拟存储管理的基本条件必要性:前面的各种存储管理方式必须一次性全部装入内存才可以运行,直至作业运行结束才能释放全部内存资源,所以存在:(1)内存不满足作业地址空间要求时就不能运行(2)大量作业要求运行时只有少数作业装入内存运行,其他作业留在辅存等待程序执行呈现局部性特征,程序的执行局限于某个部分局限性⎧⎩⎨时间局限性{某条指令被执行,不久之后指令可能再次执行某条数据被访问,不久之后数据可能再次空间局限性…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号