【损失函数系列】softmax loss损失函数详解

【损失函数系列】softmax loss损失函数详解1.损失函数:损失函数(lossfunction)是用来评测模型的预测值f(x)与真实值Y的相似程度,损失函数越小,就代表模型的鲁棒性越好,损失函数指导模型学习。根据损失函数来做反向传播修改模型参数。机器学习的目的就是学习一组参数,使得预测值与真值无限接近。2.softmaxloss:它是损失函数的一种,是softmax和cross-entropyloss组合而成的损失函数。先看softmax,其函数形式如下:其中zj就是某个神经网络全连…

大家好,又见面了,我是你们的朋友全栈君。

1.损失函数:

        损失函数(loss function)是用来评测模型的预测值f(x)与真实值Y的相似程度,损失函数越小,就代表模型的鲁棒性越好,损失函数指导模型学习。根据损失函数来做反向传播修改模型参数。机器学习的目的就是学习一组参数,使得预测值与真值无限接近。

2.softmax loss:

        它是损失函数的一种,是softmax和cross-entropy loss组合而成的损失函数。

        先看softmax,其函数形式如下:其中z就是某个神经网络全连接层输出的一组结果,例如分类问题,做4分类,z就是一个1*4的向量。j就是0~3下标号。zk就是全连接层第k个值。

                                                                               【损失函数系列】softmax loss损失函数详解(1)

 全连接输出向量z的每个值没有大小限制,显然通过(1)后就强制将它给限制在0~1之间了,变成概率值。

        cross-entropy loss 交叉熵损失函数在我的博客详细写了下:https://blog.csdn.net/gbz3300255/article/details/106810047

这里就直接上交叉熵的公式了:

                                                                  【损失函数系列】softmax loss损失函数详解(2)

f(zc)就是上面的f(fzk),就是 softmax函数的输出值。yc就是样本真值喽。公式(2)就是最终的损失函数值了。

举例说明:例如真实样本标签为

yc = [0, 0, 1, 0]。  

而第一个预测结果为

f(z1) = [0.1, 0.1,  0.7, 0.1]

f(z2) = [0.25, 0.2, 0.3, 0.35]

f(z3) = [0.15, 0.2, 0.1, 0.55]

显然第一个预测结果是对的,第二个,第三个都是错的。他们的损失函数值分别为

Lz1 = -log0.7

Lz2 = -log0.3

Lz3 = -log0.1

L函数图像如下:

                              【损失函数系列】softmax loss损失函数详解

显然,与真值越接近,损失函数越小,与真值相去越远 ,损失函数越大。优化过程就是不断的将与真值接近的那个概率值提升,提升,再提升,让损失函数降低,降低,再降低。

 

 

 

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153156.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月26日 下午3:46
下一篇 2022年6月26日 下午3:46


相关推荐

  • HttpCanary下载_用java编写自我介绍

    HttpCanary下载_用java编写自我介绍前言首先,我们无论学习哪个框架,都要带着问题,带着思考去学习思考1:HttpRunner是什么?思考2:HttpRunner的设计模式是什么?思考3:为什么我们要学习HttpRunner?他的

    2022年7月28日
    7
  • 计算机的发展历史和发展趋势_对未来计算机展望

    计算机的发展历史和发展趋势_对未来计算机展望论计算机发展史及展望(3页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!9.9积分论计算机发展史及展望杨露斯黎炼四川大学,成都双流610207摘要:自从1945年世界上第一台电子计算机诞生以来,计算机技术迅猛发展,CPU的速度越来越快,体积越来越小,价格越来越低。未来光子、一轮趨级计算技术革命。关键词:计算机;发展史;前景展望中图分类号:G4文…

    2022年10月19日
    8
  • linux查看端口是否被占用的命令是,Linux如何查看端口是否被占用

    linux查看端口是否被占用的命令是,Linux如何查看端口是否被占用Linux如何查看端口是否被占用Linux如何查看端口是否被占用?下面为大家推荐两种检测方法,对Linux系统不熟悉的小伙伴可以看看。1、使用lsof命令lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件。在linux系统下,基本上所有的东西都可以被当作文件来用。socket当然也是一种文件了。所以lsof可以用来查找谁用了某一个端口。具体方法:lsof-i:port_…

    2025年7月15日
    4
  • APP 安全测试(OWASP Mobile Top 10)–后篇之一

    APP 安全测试(OWASP Mobile Top 10)–后篇之一OWASPMobileTop10相对于Web的OWASPTop10来说,个人觉得描述的相对简单多,并且安全测试的时候的可操作性也不是太强。本来打算个人整体捋一遍的,但因为项目时间的问题,前面四个章节安排给了别人去负责,我只负责后面的六章(所以标题写了后篇)。下面我把个人的测试方法简单叙述一下。下面可能有些测试点不全或者有瑕疵,欢迎纠错。。。。OWASPM…

    2022年5月7日
    165
  • jupyternotebook和pycharm的区别_jupyternotebook和pycharm的区别

    jupyternotebook和pycharm的区别_jupyternotebook和pycharm的区别在PyCharm环境中使用JupyterNotebook

    2022年8月26日
    4
  • 分支定界算法

    分支定界算法1 概念 分支定界算法 Branchandbou 简称为 BB B amp B orBnB 始终围绕着一颗搜索树进行的 我们将原问题看作搜索树的根节点 从这里出发 分支的含义就是将大的问题分割成小的问题 大问题可以看成是搜索树的父节点 那么从大问题分割出来的小问题就是父节点的子节点了 分支的过程就是不断给树增加子节点的过程 而定界就是在分支的过程中检查子问题的上下界 如果子问题不能产

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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