热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

深度学习SoftMax回归交叉熵损失函数

熵(entropy):无损编码事件信息的最小平均编码长度对每个可能性事件进行编码,计算他们的编码长度,最短的为熵类似哈夫曼树ÿ

熵(entropy):无损编码事件信息的最小平均编码长度

对每个可能性事件进行编码,计算他们的编码长度,最短的为熵

类似哈夫曼树,编码不能有二义性:

        例:四种事件的编码分别为 10、11、 1、110,前两种编码和后两种编码都可组成1110的编码段


编码方式猫(50%)狗(25%)猪(12.5%)兔(12.5%)编码长度
方法11011001112x50%+3x25%+1x12.5%+3x12.5%=2.25
方法20110101111x50%+3x25%+2x12.5%+2x12.5%=1.875
方法30101101111x50%+2x25%+3x12.5%+3x12.5%=1.75

熵的计算公式:Entrtopy=-\sum _{i}P(i)log_{2}P(i)

        此例的熵为

​​​​​​​50% * (-log_{2}50%)+25%* (-log_{2}50%) + 12.5% * (-log_{2}12.5%) + 12.5 * (-log_{2}12.5%)

=1.75,与方法3相同


交叉熵

我们用实际的概率分布y和预测的概率分布y_hat进行交叉熵运算

CrossEntropy=\sum _{i}y_{P(i)} log_{2}\hat{y}_{P(i)}

例题:动物数据集中有四种动物,每张照片的label都为one-hot编码

独热编码(one-hot encoding):一个向量,分量和输出类别一样多,类别对应的分量为1其他为0

动物
label[1,0,0,0][0,1,0,0][0,0,1,0][0,0,0,1]

熵:-(1log_{2}1 + 0log_{2}0+0log_{2}0+0log_{2}0) = 0

若两不同模型对猫的照片进行预测


模型

预测

1[0.5,0.2,0.1,0.3]
2[0.8,0.1,0.05,0.05]

模型1的交叉熵:-(1log_{2}0.5 + 0log_{2}0.2+0log_{2}0.1+0log_{2}0.3) = 1

模型2的交叉熵:-(1log_{2}0.8 + 0log_{2}0.1+0log_{2}0.05+0log_{2}0.05) \approx 0.3219

交叉熵越小离熵越近,越准确


推荐阅读
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
  • 本文详细介绍如何在Vue项目中通过Element UI组件库实现对输入框占位符(placeholder)值的获取,以及数据绑定和查询的基本方法。文章将涵盖v-model双向绑定、el-form表单配置等核心内容。 ... [详细]
  • 解决Element UI中Select组件创建条目为空时报错的问题
    本文介绍如何在Element UI的Select组件中使用allow-create属性创建新条目,并处理创建条目为空时出现的错误。我们将详细说明filterable属性的必要性,以及default-first-option属性的作用。 ... [详细]
  • 基因组浏览器中的Wig格式解析
    本文详细介绍了Wiggle(Wig)格式及其在基因组浏览器中的应用,涵盖variableStep和fixedStep两种主要格式的特点、适用场景及具体使用方法。同时,还提供了关于数据值和自定义参数的补充信息。 ... [详细]
  • 本文介绍了如何通过扩展 UnityGUI 创建自定义和复合控件,以满足特定的用户界面需求。内容涵盖简单和静态复合控件的实现,并展示了如何创建复杂的 RGB 滑块。 ... [详细]
  • 本文详细介绍了中央电视台电影频道的节目预告,并通过专业工具分析了其加载方式,确保用户能够获取最准确的电视节目信息。 ... [详细]
  • 本文详细介绍了MicroATX(也称Mini ATX)和MATX主板规格,探讨了它们的结构特点、应用场景及对电脑系统成本和性能的影响。同时,文章还涵盖了相关操作系统的实用技巧,如蓝牙设备图标删除、磁盘管理等。 ... [详细]
  • 本文详细介绍如何在VSCode中配置自定义代码片段,使其具备与IDEA相似的代码生成快捷键功能。通过具体的Java和HTML代码片段示例,展示配置步骤及效果。 ... [详细]
  • 本文介绍了如何使用 Python 的 Bokeh 库在图表上绘制菱形标记。Bokeh 是一个强大的交互式数据可视化工具,支持丰富的图形自定义选项。 ... [详细]
  • 本题要求将由小写字母组成的字符串划分为多个片段,确保每个字母只出现在一个片段中。目标是生成尽可能多的片段,并返回每个片段的长度列表。本文将详细解释问题描述、解题思路及代码实现。 ... [详细]
  • 本文介绍如何调整Element UI组件的边框样式,以确保内容与边框之间有足够的间距,并展示如何通过CSS实现更好的布局效果。 ... [详细]
  • 本文将介绍网易NEC CSS框架的规范及其在实际项目中的应用。通过详细解析其分类和命名规则,探讨如何编写高效、可维护的CSS代码,并分享一些实用的学习心得。 ... [详细]
  • Unity编辑器插件:NGUI资源引用检测工具
    本文介绍了一款基于NGUI的资源引用检测工具,该工具能够帮助开发者快速查找和管理项目中的资源引用。其功能涵盖Atlas/Sprite、字库、UITexture及组件的引用检测,并提供了替换和修复功能。文末提供源码下载链接。 ... [详细]
author-avatar
520sweet跃_322
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有