第一篇:

利用一些饱和激活函数的如sigmoid激活时,假如利用均方误差损失,那么损失函数向最后一层的权重传递梯度时,梯度公式为

可见梯度与最后一层的激活函数的导数成正比,因此,如果起始输出值比较大,也即激活函数的导数比较小,那么整个梯度幅度更新幅度都比较小,收敛时间很长。若一开始输出值比较小那么更新速度比较好,收敛也快,因此不稳定。且与输出值a与真实值的误差成正比。

再看损失函数改成交叉熵损失时:

此时损失函数对于最后一层权重的梯度不再跟激活函数的导数相关,只跟输出值和真实值的差值成正比,此时收敛较快。又反向传播是连乘的,因此整个权重矩阵的更新都会加快。

另外,多分类交叉熵损失求导更简单,损失仅与正确类别的概率有关。而且损失对于softmax激活层的输入求导很简单。

————————————————

版权声明:本文为CSDN博主「无它,唯手熟尔」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_42422981/article/details/90645074

另外一篇:

一.前言

在做神经网络的训练学习过程中,一开始,经常是喜欢用二次代价函数来做损失函数,因为比较通俗易懂,后面在大部分的项目实践中却很少用到二次代价函数作为损失函数,而是用交叉熵作为损失函数。为什么?一直在思考这个问题,这两者有什么区别,那个更好?下面通过数学的角度来解释下。

思考:

1.我们希望我们损失函数能够做到,当我们预测的值跟目标值越远时,在修改参数时候,减去一个更大的值,做到更加快速的下降。

2.哪个函数更不容易陷入局部最优解

二.两种代价函数的表达式

二次代价损失函数:

交叉熵损失函数:

针对二分类来说,其中:

ai第Xi个样本经过前向传播之后到达最后一个节点的值

三.收敛速度比较

两个函数反向传播梯度比较

1.二次代价函数

为了方便只取一个样本,那么损失为:

那么w,b的梯度为:

2.交叉熵

为了方便只取一个样本,损失为:

计算w,b的梯度:

分析和结论

由此可看出,在做后向传播时

1.对于square mean在更新w,b时候,w,b的梯度跟激活函数的梯度成正比,激活函数梯度越大,w,b调整就越快,训练收敛就越快,但是Simoid函数在值非常高时候,梯度是很小的,比较平缓。

2.对于cross entropy在更新w,b时候,w,b的梯度跟激活函数的梯度没有关系了,bz已经表抵消掉了,其中bz-y表示的是预测值跟实际值差距,如果差距越大,那么w,b调整就越快,收敛就越快。

四.两个损失函数的函数图像

square mean:

交叉熵:

(这两个图是从吴恩达课程中截取出来的)可以看出,二次代价函数存在很多局部最小点,而交叉熵就不会。

附录:

simoid函数的导数:

参考:

交叉熵损失函数优缺点_交叉熵损失函数的优点(转载)相关推荐

  1. 交叉熵损失函数优缺点_交叉熵损失函数

    交叉熵代价函数(Cross-entropy cost function)是用来衡量人工神经网络(ANN)的预测值与实际值的一种方式.与二次代价函数相比,它能更有效地促进ANN的训练.在介绍交叉熵代价函 ...

  2. 交叉熵损失函数优缺点_【损失函数】常见的损失函数(loss function)总结

    阅读大概需要7分钟 跟随小博主,每天进步一丢丢 机器学习算法与自然语言处理出品 @公众号原创专栏作者 yyHaker 单位 | 哈工大SCIR实验室 损失函数用来评价模型的预测值和真实值不一样的程度, ...

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

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

  4. 平均符号熵的计算公式_交叉熵(Cross Entropy)从原理到代码解读

    交叉熵(Cross Entropy)是Shannon(香浓)信息论中的一个概念,在深度学习领域中解决分类问题时常用它作为损失函数. 原理部分:要想搞懂交叉熵需要先清楚一些概念,顺序如下:==1.自信息 ...

  5. yolov3损失函数改进_基于改进损失函数的YOLOv3网络

    目标检测具有广阔的发展前景和巨大的商业价值, 已经成为国内外相关从业者的研究热点, 在智能安防.自动驾驶等领域具有广泛应用. 经典的目标检测方法有Dalal于2005年提出的基于HOG特征的检测方法[ ...

  6. 交叉验证python代码_交叉验证以及python代码实现

    这篇文章介绍的内容是关交叉验证以及python代码实现 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 模型选择的两种方法:正则化(典型方法).交叉验证. 这里介绍交叉验证及其pyth ...

  7. 交叉熵损失函数公式_交叉熵损失函数对其参数求导

    1.Sigmoid 二分类交叉熵 交叉熵公式: 其中y是laebl:0 或1. hθ(xi)是经过sigmoid得到的预测概率.θ为网络的参数, m为样本数. hθ()函数如下所示, J(θ) 对参数 ...

  8. 交叉熵损失函数分类_交叉熵损失函数

    我们先从逻辑回归的角度推导一下交叉熵(cross entropy)损失函数. 从逻辑回归到交叉熵损失函数 这部分参考自 cs229-note1 part2. 为了根据给定的 预测 (0或1),令假设函 ...

  9. 交叉驰豫的影响因素_交叉滚子轴承系列吉林薄壁交叉滚子轴承用途博盈

    大家是否会鉴别交叉滚子轴承质量的好坏呢,下面我们起讨论如何挑选好的轴承. 1.先看交叉滚子轴承钢的使用材质,轴承是自己业的炼钢厂生产出来的,在硬度和精密上都高于假冒的FAG轴承. 2.采用高投入标记设 ...

最新文章

  1. 用C语言编程 限定输入的年月日,C语言程序设计: 输入年月日 然后输出是星期几...
  2. Java输出流需要注意的几点细节
  3. 定时覆盖库_高考直通车公众号 联考题库大全
  4. 探索Julia(part1)--Julia初识
  5. P4322-[JSOI2016]最佳团体【0/1分数规划,树形背包】
  6. SQL Server下载指南
  7. poi的excel解析工具类
  8. 括号匹配算法Java实现
  9. labelcommand打印条码_Zebra条码打印机编程命令
  10. 信息学奥赛 python 教程_浦东信息学奥赛课程价格表,Python编程课程
  11. ubuntu16.04使用umake安装pycharm-professional
  12. 汇率换算(android安卓版)
  13. iPhone、iPad尺寸
  14. 妈妈再也不用担心我的博客访问量了(一个可以刷博客访问量的小程序java)
  15. 制图软件cad-深度了解Mechanical 工具组合
  16. Spring cloud实现FeignClient指定Zone调用
  17. ios - 百度地图和高德地图坐标的区别
  18. yinyuetai.com音悦台 80万数据采集
  19. 图解点云深度学习中FPS(Farthest Point Sampling)--最远点采样算法
  20. 安卓手机端网页,开启输入法时页面内容被压缩的解决方法

热门文章

  1. TAQ服务器npc多久自动交物资,小服开门堪忧 安其拉物资自动捐献没有正常运作...
  2. 自己现实的仿微信通讯录列表
  3. Jenkins集成 SonarQube
  4. Centos7安装SonarQube常见问题
  5. 老板讲述:公司有钱,我为什么不发年终奖?
  6. 关于用jackson的@JsonProperty注解属性名,会多出一个字段的问题
  7. js实现文本框输入时同步出现模糊搜索列表
  8. python两个数组合并排序_2、合并排序数组
  9. Bbar和Tbar的使用
  10. 服务器拦截微信请求,分享微信域名检测,域名拦截检测接口(官方api)