首页 > 其他分享 >机器学习——熵,交叉熵,相对熵

机器学习——熵,交叉熵,相对熵

时间:2022-10-05 11:00:44浏览次数:69  
标签:机器 比特 概率分布 交叉 KL 学习 信源 信息熵 分布

熵—不确定性角度

通常,一个信源发送什么符号是不确定的,衡量它可以根据其出现的概率来度量。概率大,出现的机会就大,不确定性就小;反之不确定性就大。在信源中,考虑的不是某一单个符号的不确定性,而是考虑这个信源所有可能发生情况的平均不确定性。

若信源符号有n种取值:\(u_1, u_2, ..., u_n\),其对应概率分别为\(p_1, p_2, ..., p_n\),且各种符号的出现彼此独立。这时,信源的平均不确定性 定义为单个符号概率的负对数统计平均值,将其命名为信息熵。即\(H(U)=E[-logp_i]=-\sum_{i=1}^{n}p_ilogp_i\)(这里负对数是一个减函数,合乎上文不确定性与概率的关系)

熵——信息量角度

在信息论中,熵是接收的每条消息中包含的信息的平均量,又被称信息熵。这里,“消息”代表来自分布或者数据流中的事件、样本或特征。来自信源的另一个特征是样本的概率。这里的想法是,比较不可能发生的事件,当它发生了,会提供更多的信息。由于一些其它的原因,把信息(熵)定义为概率分布对数的相反数是有道理的。事件的概率分布和每个事件的信息量构成了一个随机变量,这个随机变量的均值即期望就是这个分布产生的信息量的平均值即熵。

熵的计算

抛硬币事件:正面向上,反面向上的概率分别为\(p_1, p_2\),则该事件的信息熵为\(H=p_1log_1 + p_2logp_2=p_1log_1+(1-p1)log(1-p1)\),这个信息熵函数是一个凸函数,有一个最大值即正面
向上和反面向上的概率值相等时,熵取最大值为1(对数是以2为底,熵的单位是比特)。

我们无法预知下一个硬币抛掷的结果是什么,因此每一次抛硬币都是不可预测的,因此使用一枚正常的硬币进行若干次抛掷,这个时间的熵至多是一个比特,因为结果不外乎两个——正面或者
反面,可以用0,1编码。而且两个结果是彼此独立的,若进行n次独立实验,则熵可用长度为n的比特流表示。
image

交叉熵

在信息论中,基于相同事件测度的两个概率分布p和q的交叉熵是指,用一个近似分布q(或理论分布q)进行编码时,在事件集合中唯一标识一个事件所需的平均比特数即\(H(p, q) = E_p[-logq]\), 离散和连续情况下形式如下:

\(H(p, q) = -\sum_x p(x)log q(x)\)

\(H(p, q) = -\int p(x)logq(x)dx\)

相对熵

相对熵,又被称之为KL散度或者信息散度,是对两个概率分布之间差异性的一种度量,这种度量是非对称性的。

定义

设\(P(x), Q(x)\)是随机变量X上的两个概率分布,则在离散和联想随机变量的情况下,相对熵的定义分别为:

\(KL(P||Q) = \sum P(x)log\frac{P(x)}{Q(x)}\)

\(KL(P||Q) = \int P(x)log\frac{P(x)}{Q(x)}dx\)

一般P表示真实的数据分布(可能未知),而Q是理论的概率分布或者是对P的近似分布,KL散度就是度量使用基于Q的分布来编码服从P的分布的样本所需的额外的平均比特数。

这个定义可以由熵和交叉熵的概念推导出。使用基于P的分布来编码服从P分布的样本的平均比特数是熵H(P); 使用Q分布来编码服从P分布的样本所需要的平均比特数就是交叉熵H(P, Q)。这两者的差值就是使用所需要的额外比特数即\(KL(P||Q) = H(P,Q) - H(P)\)

参考

https://baike.baidu.com/item/信息熵/7302318

https://baike.baidu.com/item/相对熵/4233536

https://zh.m.wikipedia.org/zh-hans/交叉熵

https://www.cvmart.net/community/detail/3939

标签:机器,比特,概率分布,交叉,KL,学习,信源,信息熵,分布
From: https://www.cnblogs.com/wolfling/p/16755216.html

相关文章

  • 图论专题-学习笔记:树上启发式合并(dsu on tree)
    目录1.前言2.详解3.总结1.前言树上启发式合并(dsuontree),是一种类似于启发式合并的方式解决关于部分子树内问题的算法,一般都是什么子树内颜色个数等等的。前置知识:......
  • Netty 学习(八):新连接接入源码说明
    Netty学习(八):新连接接入源码说明作者:Grey原文地址:博客园:Netty学习(八):新连接接入源码说明CSDN:Netty学习(八):新连接接入源码说明新连接的接入分为3个过程检测到有新......
  • Qt基础学习之事件
    Qt-事件1.Qt对事件的描述及分类什么是事件事件是由程序内部或者外部产生的事件或某种动作的统称。比如鼠标点击产生一鼠标事件,键盘按下产生一个键盘事件,窗口显示产生......
  • docker相关学习
    https://www.runoob.com/docker/docker-tutorial.html安装docker文档地址教程地址https://www.cnblogs.com/stormlong/p/10863061.htmlhttps://www.jb51.net/article/......
  • 基于深度学习的语义分割综述
    ImageSegmentationUsingDeepLearning:ASurveyPaper链接:https://arxiv.org/abs/2001.05566摘要图像分割是图像处理和计算机视觉领域的一个重要课题,在场景理解、医学......
  • 3D目标检测深度学习方法数据预处理综述
    前言​这一篇的内容主要要讲一点在深度学习的3D目标检测网络中,我们都采用了哪些数据预处理的方法,主要讲两个方面的知识,第一个是representation,第二个数据预处理内容是数据......
  • 3D目标检测深度学习方法之voxel-represetnation内容综述(一)
    前言​笔者上一篇文章有介绍了3D目标检测中比较重要的数据预处理的两个方面的内容,其一是几种representation的介绍,分别是point、voxel和grap三种主要的representation,具体......
  • 3D目标检测深度学习方法之voxel-represetnation内容综述(二)
    前言​前面的一篇文章:3D目标检测深度学习方法中voxel-represetnation内容综述(一)中笔者分享了如果采用voxel作为深度学习网络输入的backbone的几个重要的模块。也就是目前......
  • 深度学习装机指南:从GPU到显示器,全套硬件推荐
    前言:硬件设备,是任何一名深度学习er不可或缺的核心装备。各位初级调参魔法师们,你们有没有感到缺少那一根命中注定的魔杖?可是,各种CPU、GPU、内存条、外设,那么多品牌种类型号参......
  • hadoop学习笔记
    XIhadoop​文本文件(索引);​structureddata,RDBMS(表,字段,数据类型,约束);​semi-structureddata,半结构化数据(xml,json);​google(网络爬虫、网络蜘蛛、网络机器人,20亿个页面,unstruc......