损失函数loss大大总结_logloss 损失函数

损失函数loss大大总结_logloss 损失函数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个值。

                                                                               损失函数loss大大总结_logloss 损失函数(1)

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

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

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

                                                                  损失函数loss大大总结_logloss 损失函数(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函数图像如下:

                              损失函数loss大大总结_logloss 损失函数

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

 

 

 

 

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/124893.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • activity的用法总结_pagemanager

    activity的用法总结_pagemanagerActivityManager总结列表1.公共方法(1)getMemoryClass()通过以兆为单位获取当前应用可用的内存大小。(2)getLargeMemoryClass()当开发者在manifest文件中的标签中设置largeHeap属性的值为”true”时,当前应用就可以获取到系统分配的最大堆内存.如果你设置了该值,可以通过ActivityMa

  • 求二叉树的最长路径_对下列二叉树进行前序遍历的结果为

    求二叉树的最长路径_对下列二叉树进行前序遍历的结果为Ural 大学有 N 名职员,编号为 1∼N。他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司。每个职员有一个快乐指数,用整数 Hi 给出,其中 1≤i≤N。现在要召开一场周年庆宴会,不过,没有职员愿意和直接上司一起参会。在满足这个条件的前提下,主办方希望邀请一部分职员参会,使得所有参会职员的快乐指数总和最大,求这个最大值。输入格式第一行一个整数 N。接下来 N 行,第 i 行表示 i 号职员的快乐指数 Hi。接下来 N−1 行,每行输入一对整数 L,K,表示 K 是 L 的直接

  • 详解Linux双网卡绑定之bond0「建议收藏」

    1、什么是bond?  网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术。Kernels2.4.12及以后的版本均供bonding模块,以前的版本可以通过patch实现。2、实现原理:  网卡工作在混杂(promisc)模式,接收到达网卡的所有数据包,tcpdump工作用的也是混杂模式(promisc),将两块网卡的MAC地址…

  • Html元素的scrollWidth和scrollHeight详解 .[通俗易懂]

    Html元素的scrollWidth和scrollHeight详解 .[通俗易懂]上网搜了一下scrollWidth和scrollHeight,大部分都是转帖,也没有具体说清楚,这两个属性值是什么,也没有图。索性自己测试一下,包含的浏览器有IE6,IE7,IE8,IE9,Firefox,Chrome,Opera,Safari,顺便把测试的截图也发上来,这样大家看着也明白。一、scrollWidth首先,我们先上MSDN上查一下scroll

  • latex打双引号“ “

    latex打双引号“ “latex中如果用英文输入模式的双引号键入,则输出的结果与我们预期的不符合,这并不是LaTeX的正确输入方式。”test”输出为:正确的输入方式为:引号左边输入两个反引号`,,引号右边输入两个单引号’。“test”输出为:…

  • python替换字符串元素_python替换字符串中的子串图文步骤「建议收藏」

    python替换字符串元素_python替换字符串中的子串图文步骤「建议收藏」python替换字符串中的子串图文步骤修改字符串本身是不可能的,因为字符串是不可变类型,只能是通过某些方法来产生它的副本。再把副本赋值给原字符串,达到类似替换的作用。这里介绍几种方法。旧串换新串:使用str.replace(old,new,max)1)字符串调用此函数时,将生成一个字符串的副本。副本中new将替代old。2)old-原来的子串。3)new-新子串,用于替换old。4)max-…

发表回复

您的电子邮箱地址不会被公开。

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