深度学习基础知识-损失函数

目录

1. 均方误差(Mean Squared Error, MSE)

2. 平均绝对误差(Mean Absolute Error, MAE)

3. Huber 损失

4. 交叉熵损失(Cross-Entropy Loss)

5. KL 散度(Kullback-Leibler Divergence)

6. Hinge 损失

7. 对比损失(Contrastive Loss)

8. 三元损失(Triplet Loss)

9. Focal loss损失


损失函数在深度学习模型训练中起着核心作用,它度量模型的预测输出与真实值的差距,并指导模型更新权重以缩小误差,从而实现更好的拟合。不同任务(如分类、回归、生成)常用不同的损失函数,以适应特定需求。

1. 均方误差(Mean Squared Error, MSE)

定义

其中,y_i 表示真实值,表示模型的预测值,N 为样本数。

推导与解释

  • MSE 通过平方的方式将每个样本的预测误差放大,使得较大误差的影响更显著。这样做的目的是让模型在更新参数时优先关注误差较大的数据点,从而尽可能减少大误差。
  • MSE 具有凸性,因此有利于使用梯度下降等优化算法找到全局最小值。

应用场景: MSE 常用于回归任务(如房价预测),适用于误差服从正态分布的数据。由于对较大误差敏感,因此对异常值多的场景效果不佳。

2. 平均绝对误差(Mean Absolute Error, MAE)

定义

推导与解释

  • MAE 直接对误差取绝对值,避免了平方的操作。因此,MAE 相比 MSE 对异常值的敏感性更低,更关注整体误差的平均水平。
  • MAE 损失函数的优化不如 MSE 简便,因为它的导数在 y_i = 处不可导,造成优化算法收敛相对缓慢。

应用场景: MAE 同样用于回归任务,尤其是误差分布中含有异常值的场景。

3. Huber 损失

Huber 损失结合了 MSE 和 MAE 的优点,使模型对误差具有一定的鲁棒性。

定义

其中 $\delta$ 是超参数。

推导与解释

  • 当误差小于时,Huber 损失与 MSE 相同,这时候我们主要关注小误差的细致调整;
  • 当误差大于时,Huber 损失与 MAE 相似,减少了异常值对模型的影响,使得损失函数更鲁棒。

应用场景: Huber 损失常用于回归问题且数据中含有异常值,它的鲁棒性使其在异常值较多的数据集上效果良好。需要通过交叉验证选择合适的 参数。

4. 交叉熵损失(Cross-Entropy Loss)

二分类交叉熵

多分类交叉熵

其中 C 为类别数, 为真实标签(1 表示第 i 个样本属于第 j 类,0 表示不属于), 为预测的概率分布。

推导与解释

  • 交叉熵计算的是模型输出分布与真实分布的距离,当模型预测越接近真实分布时,交叉熵值越小。
  • 通过 softmax 函数将模型的原始输出转化为概率分布,使得该损失函数适用于分类任务。

应用场景: 交叉熵广泛应用于分类任务(如图像分类、文本分类)。它通过最大化模型预测的概率使模型学到更具区分性的特征。

5. KL 散度(Kullback-Leibler Divergence)

定义

推导与解释

  • KL 散度度量两个概率分布 P 和 Q 的差异性,值越小说明两个分布越接近。
  • KL 散度在生成模型中用于度量生成分布和真实分布的相似性,通过最小化 KL 散度可以生成与真实分布更接近的数据。

应用场景: 常用于生成模型(如 VAE)或对抗学习中,通过最小化模型分布和真实分布的距离提升生成效果。

6. Hinge 损失

Hinge 损失用于支持向量机中,特别适合二分类任务。

定义

推导与解释

  • Hinge 损失会对错误分类的样本产生较大惩罚,使得支持向量机学习到一个能够分隔不同类别的最大边界。
  • 该损失强调的是分类边界的宽度,通过“拉开”分类边界增强模型的鲁棒性。

应用场景: 用于支持向量机的训练,能够有效区分两个类别的边界。由于对类别间隔的强调,也在一些深度学习模型中用于分类任务。

7. 对比损失(Contrastive Loss)

对比损失常用于度量学习和孪生网络中。

定义

其中 y_i 表示样本对的标签(1 表示相似,0 表示不相似),d_i 是样本对的距离,m 是边界阈值。

推导与解释

  • 当样本对相似时(y_i = 1),损失度量的是距离的平方 d_i^2,鼓励相似样本对的距离越小越好。
  • 当样本对不相似时,损失函数度量样本对是否超出距离阈值 m,使得不相似样本的距离更大。

应用场景: 用于图像检索、人脸识别等领域,通过度量样本间的相似度优化模型的特征学习能力。

8. 三元损失(Triplet Loss)

三元损失用于度量学习,利用 Anchor、Positive、Negative 样本的相对距离关系来优化模型。

定义

其中 x_i^a 为 Anchor 样本,x_i^p 为 Positive 样本,x_i^n 为 Negative 样本,为 margin。

推导与解释

  • 三元损失将相似样本(Anchor 和 Positive)拉近,将不相似样本(Anchor 和 Negative)推远,形成更明显的区分度。
  • 是一个距离间隔的超参数,确保相似样本对距离小于不相似样本对。

应用场景: 广泛用于人脸验证、图像检索,通过距离度量的方式获得更具区分度的特征空间。

9. Focal loss损失

Focal 损失是对交叉熵损失的改进,专门应对类别不平衡问题。

定义

其中 是平衡因子,gamma是聚焦因子。

推导与解释

  • Focal 损失通过调整权重因子 和聚焦因子 gamma 来平衡不同类别样本的贡献。对难以分类的样本增加损失权重。
  • 该损失有助于模型从稀有样本中学习更多特征,减少简单样本的影响。

应用场景: 用于目标检测和极度不平衡数据集下的分类任务,使模型对难样本(如小目标)有更好的检测效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/3125.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

ArcGIS影像调色(三原色)三原色调整

本期主要介绍ArcGIS影像调色(三原色) ArcGIS影像调色(三原色),对比度、亮度、gamma。红绿蓝三原色调整。 视频学习 ArcGIS影像调色(三原色)

<HarmonyOS第一课>HarmonyOS SDK开放能力简介的课后习题

不出户&#xff0c;知天下&#xff1b; 不窥牖&#xff0c;见天道。 其出弥远&#xff0c;其知弥少。 是以圣人不行而知&#xff0c;不见而明&#xff0c;不为而成。 本篇<HarmonyOS第一课>HarmonyOS SDK开放能力简介是简单介绍了HarmonyOS SDK&#xff0c;不需要大家过多…

SpringBoot在线教育系统:移动学习解决方案

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式&#xff0c;是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示&#xff1a; 图4-1系统工作原理…

日收入4个亿!中国宏桥成价值投资者“梦中情股”

随着近期市场波动加剧&#xff0c;投资的第一性原则——“确定性”再次被投资者频频提起。而相比于科技股的“市梦率”&#xff0c;更注重业绩与回报的资源股无疑为投资者提供了较高的安全边际。 众所周知的是&#xff0c;主张价值投资的巴菲特一向对资源股的青睐有加&#xf…

#Swift Two-Phase Initialiaztion and 4 Safety check

在Swift中&#xff0c;Two-Phase Initialization&#xff08;二阶段初始化&#xff09;是一种确保类对象在完全初始化之前不会被使用的机制。这个机制主要用于类的初始化&#xff0c;尤其是在继承体系中&#xff0c;以确保子类和父类的属性都正确地初始化。Two-Phase Initializ…

Python毕业设计选题:基于Python的无人超市管理系统-flask+vue

开发语言&#xff1a;Python框架&#xff1a;flaskPython版本&#xff1a;python3.7.7数据库&#xff1a;mysql 5.7数据库工具&#xff1a;Navicat11开发软件&#xff1a;PyCharm 系统展示 系统首页 超市商品详情 购物车 我的订单 管理员登录界面 管理员功能界面 用户界面 员…

JAVA笔记 | ResponseBodyEmitter等异步流式接口快速学习

先简单记录下简单使用跟测试&#xff0c;后续再补充具体&#xff0c;最近有用到&#xff0c;简单来说就是后端(服务端)编写个发射器&#xff0c;实现一次请求&#xff0c;一直向前端客户端发射数据&#xff0c;直到发射器执行完毕&#xff0c;模拟ai一句一句回复的效果 Respon…

cdp(Chrome DevTools Protocol)检测分析

如需转载请注明出处.欢迎小伙伴一起讨论技术. 逆向网站:aHR0cHM6Ly93d3cuYnJvd3NlcnNjYW4ubmV0L2JvdC1kZXRlY3Rpb24 首先,打开devtools后访问网址,检测结果网页显示红色Robot,标签插入位置,确定断点位置可以hook该方法,也可以使用插件等方式找到这个位置,本篇不讨论. Robot标…

HUGE滤波器分析、matlab例程

文章目录 1. 动态噪声方差2. 更新卡尔曼增益时考虑实时噪声3. 更灵活的误差模型4. 实时调整和自适应能力代码示例中的体现总结 HUGE滤波器专注于处理异方差性&#xff0c;主要体现在以下几个方面&#xff1a; 1. 动态噪声方差 在传统的卡尔曼滤波中&#xff0c;观测噪声和过程…

[OS] Assignment3_Prerequisite_mmap()_1

专业解释 这张图片展示了 mmap() 函数的作用和其在内存映射中的应用。在操作系统中&#xff0c;mmap() 是一个系统调用&#xff0c;它的主要作用是将文件或设备的内容映射到进程的虚拟地址空间中&#xff0c;使得文件内容可以像内存一样直接访问。 mmap() 函数的核心功能&…

部署istio应用未能产生Envoy sidecar代理

1. 问题描述及原因分析 在部署Prometheus、Grafana、Zipkin、Kiali监控度量Istio的第2.2章节&#xff0c;部署nginx应用&#xff0c;创建的pod并没有产生Envoy sidecar代理&#xff0c;仅有一个应用容器运行中 故在随后的prometheus中也没有产生指标istio_requests_total。通…

HBuilderX自定义Vue3页面模版

HBuilderX自定义Vue3页面模版 首先在HBuilderX工具下的任意一个项目添加新建自定义页面模版 新建模版文件&#xff0c;并打开进行编辑 vue3-setup-js.vue文件里填写样式模版&#xff08;根据自己的需要进行修改&#xff09; <template><view class"">&…

PAT甲级-1084 Broken Keyboard

题目 题目大意 坏的键盘不能打出字符。给出2个字符串&#xff0c;一个字符串是期望打出的字符&#xff0c;另一个字符串是实际打出的字符。要求输出坏掉的字符&#xff0c;字母键用大写字母。字符范围是_以及大小写字母和数字。 思路 因为大小写字母是同一个键&#xff0c;所…

【天线&其他】大疆无人机热成像人员目标检测系统源码&数据集全套:改进yolo11-bifpn-SDI

改进yolo11-ASF等200全套创新点大全&#xff1a;大疆无人机热成像人员目标检测系统源码&#xff06;数据集全套 1.图片效果展示 项目来源 人工智能促进会 2024.11.03 注意&#xff1a;由于项目一直在更新迭代&#xff0c;上面“1.图片效果展示”和“2.视频效果展示”展示的系…

gitee推送代码remote rejected

其原因是码云邮箱设置怕暴露邮箱账号&#xff0c;所以禁止了代码推送 直接把这个选项关掉就行了

英特尔股价分析,财报超出预期,英特尔股票该买入还是卖出?

猛兽财经核心观点&#xff1a; &#xff08;1&#xff09;虽然英特尔第三季度的营收超出预期&#xff0c;但盈利却不及预期。 &#xff08;2&#xff09;华尔街分析虽然仍对英特尔持谨慎态度&#xff1b;但预计其2025年后有望取得重大进展。 &#xff08;3&#xff09;猛兽财经…

靠谱的零代码产平台开发— 应用创建与设置

在当今数字化快速发展的时代&#xff0c;企业对于快速构建和部署应用的需求日益增长。然而&#xff0c;传统的应用开发方式往往耗时耗力&#xff0c;且需要专业的编程技能。为了应对这一挑战&#xff0c;靠谱的零代码平台应运而生&#xff0c;它们通过直观的拖拽式界面和丰富的…

如何优雅处理异常?处理异常的原则

前言 在我们日常工作中&#xff0c;经常会遇到一些异常&#xff0c;比如&#xff1a;NullPointerException、NumberFormatException、ClassCastException等等。 那么问题来了&#xff0c;我们该如何处理异常&#xff0c;让代码变得更优雅呢&#xff1f; 1 不要忽略异常 不知…

Scrapy入门

Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架。 安装scrapy pip install scrapy2.5.0 1.新建 Scrapy项目 scrapy startproject mySpider # 项目名为mySpider 2.进入到spiders目录 cd mySpider/mySpider/spiders 3.创建爬虫 scrapy gensp…

从0开始linux(20)——文件(1)文件描述符

欢迎来到博主的专栏&#xff1a;从0开始linux 博主ID&#xff1a;代码小豪 文章目录 文件打开文件文件修饰符从linux源码了解文件描述符 文件 首先我们先来搞清楚文件是什么&#xff1f;文件其实就是一段数据&#xff0c;是一段存储在磁盘当中的数据&#xff0c;文件是由文件内…