参考:交叉熵_百度百科
交叉熵(Cross Entropy)是信息论中一个重要概念,主要用于度量两个概率分布间的差异性信息。语言模型的性能通常用交叉熵和复杂度来衡量。交叉熵的意义是用该模型对文本识别的难度,或者从压缩的角度来看,每个词平均要用几个位来编码。复杂度的意义是用该模型表示这一文本平均的分支数,其倒数可视为每个词的平均概率。平滑是指对没观察到的N元组合赋予一个概率值,以保证词序列总能通过语言模型得到一个概率值。通常使用的平滑技术有图灵估计、删除插值平滑、Katz平滑和Kneser-Ney平滑。

将交叉熵引入计算语言学消岐领域,采用语句的真实语义作为交叉熵的训练集的先验信息,将机器翻译的语义作为测试集后验信息。计算两者的交叉熵,并以交叉熵指导对歧义的辨识和消除。实例表明,该方法简洁有效,易于计算机自适应实现。交叉熵不失为计算语言学消岐的一种较为有效的工具。常用于GAN

在信息论中,交叉熵是表示两个概率分布p,q,其中p表示真实分布,q表示非真实分布,在相同的一组事件中,其中,用非真实分布q来表示某个事件发生所需要的平均比特数。从这个定义中,我们很难理解交叉熵的定义。下面举个例子来描述一下:

假设现在有一个样本集中两个概率分布p,q,其中p为真实分布,q为非真实分布。假如,按照真实分布p来衡量识别一个样本所需要的编码长度的期望为:

但是,如果采用错误的分布q来表示来自真实分布p的平均编码长度,则应该是:
或者  
此时就将H(p,q)称之为交叉熵。交叉熵的计算方式如下:
对于离散变量采用以下的方式计算:

对于连续变量采用以下的方式计算:

应用

交叉熵可在神经网络(机器学习)中作为损失函数,p表示真实标记的分布,q则为训练后的模型的预测标记分布,交叉熵损失函数可以衡量p与q的相似性。交叉熵作为损失函数还有一个好处是使用sigmoid函数在梯度下降时能避免均方误差损失函数学习速率降低的问题,因为学习速率可以被输出的误差所控制。

在特征工程中,可以用来衡量两个随机变量之间的相似度。

在语言模型中(NLP)中,由于真实的分布p是未知的,在语言模型中,模型是通过训练集得到的,交叉熵就是衡量这个模型在测试集上的正确率。

交叉熵【度量两个概率分布间的差异性信息】相关推荐

  1. 衡量两个概率分布之间的差异性的指标

    衡量两个概率分布之间的差异性的指标 衡量两个概率分布之间的差异性的指标 KL散度(Kullback–Leibler divergence) JS散度(Jensen-Shannon divergence ...

  2. matlab计算联合熵,如何用matlab软件计算一幅图像信息的熵以及两幅图像间的联合熵?...

    %计算一副图像的熵 %随机生成图像 A=floor(rand(8,8).*255); [M,N]=size(A); temp=zeros(1,256); %对图像的灰度值在[0,255]上做统计 fo ...

  3. 常用损失函数:交叉熵损失

    目录 什么是损失函数 均方误差与交叉熵 为什么要使用交叉熵 交叉熵与KL散度之间的关系 参考文献 什么是损失函数 对于损失函数网上已经有充分的解释:"机器学习中所有的算法都需要最大化或最小化 ...

  4. 【机器学习】信息论基础(联合熵、条件熵、交叉熵、KL散度等)+ Python代码实现

    文章目录 一.基本概念 1.1 联合熵 1.2 条件熵 1.3 交叉熵 1.3.1 Python编程实现交叉熵计算 1.4相对熵(KL散度) 1.4.1 Python编程实现KL散度计算 二.自信息和 ...

  5. 交叉熵的物理意义及简单公式推导

    交叉熵(Cross Entropy)是Shannon信息论中一个重要概念,主要用于度量两个概率分布间的差异性信息. 若P(x)是数据的真实概率分布,q(x)是由数据计算得到的概率分布.机器学习的目的就 ...

  6. 交叉熵损失函数优缺点_如何简单通俗的理解交叉熵损失函数?

    前面小编给大家简单介绍过损失函数,今天给大家继续分享交叉熵损失函数,直接来看干货吧. 一.交叉熵损失函数概念 交叉熵损失函数CrossEntropy Loss,是分类问题中经常使用的一种损失函数.公式 ...

  7. 交叉熵以及通过Python实现softmax_交叉熵(tensorflow验证)

    文章目录 交叉熵(Cross Entropy) 信息论 相对熵 交叉熵 机器学习中的交叉熵 为什么要用交叉熵做损失函数? 分类问题中的交叉熵 softmax softmax_cross_entropy ...

  8. 香农熵、相对熵(KL散度)与交叉熵

    连接:https://blog.csdn.net/lanchunhui/article/details/51277608 https://blog.csdn.net/zshfeng/article/d ...

  9. Pytorch深度学习笔记(02)--损失函数、交叉熵、过拟合与欠拟合

    目录 一.损失函数 二.交叉熵损失函数详解 1.交叉熵 2.信息量 3.信息熵 4.相对熵(KL散度) 5.交叉熵 6.交叉熵在单分类问题中的应用 7.总结: 三.过拟合和欠拟合通俗解释 1.过拟合 ...

最新文章

  1. 如何删除mac通用二进制文件
  2. (转)PHP5使用cookie时报错 cannot modify header information - headers already sent by (......)
  3. 从信息瓶颈理论一瞥机器学习的“大一统理论”
  4. java虚拟机内存空间
  5. Apache Storm技术实战之3 -- TridentWordCount
  6. 最小生成树原理及Kruskal算法的js实现
  7. 操作Zookeeper
  8. 新版微信不停跳转到小程序_微信又有大动作,小程序跳转功能将受限?
  9. JavaWeb POI 将数据从数据库导出到Excel表 实例(亲测有效!)
  10. Windows - 修复所有快捷方式的打开方式
  11. 如何创建计算机的桌面快捷方式,什么是快捷方式、如何创建快捷方式?
  12. search_web_resources
  13. html中如何把两行合并单元格,怎么把表格上下两行合并单元格合并
  14. C. Dominant Character
  15. 【泡泡机器人翻译专栏】LSD-SLAM : 基于直接法的大范围单目即时定位和地图构建方法
  16. 弹性盒子 -- flex
  17. 前端开发:webstorm永久破解
  18. 用HBuild生成APP启动页面准备
  19. 7-1 sdut-求一个3*3矩阵对角线元素之和7-2 求矩阵各行元素之和7-3 sdut- 对称矩阵的判定7-4 sdut- 杨辉三角7-5 sdut- 鞍点计算7-6 矩阵转置
  20. 网络中的网络:NiN

热门文章

  1. K-近邻算法(KNN)概述
  2. 数据结构基础(18) --哈希表的设计与实现
  3. 图像模糊--快速均值滤波
  4. 没网?没问题。用Air Gap使用Artifactory
  5. C#正则表达式替换字符串
  6. Tomcat的配置和优化
  7. 20100311 学习记录
  8. 做网管这么久了,每个月只是拿1000元的工资
  9. OJ1021: 三个整数的最大值
  10. 信息学奥赛一本通 1982:【19CSPJ普及组】数字游戏