当前位置: 首页 > news >正文

损失函数总结(二):L1Loss、MSELoss

损失函数总结(二):L1Loss、MSELoss

  • 1 引言
  • 2 损失函数
    • 2.1 L1Loss
    • 2.2 MSELoss
  • 3 总结

1 引言

在上一篇博文中介绍了损失函数是什么以及为什么使用损失函数,从这一篇博文就开始关于损失函数有哪些进行进一步的介绍。这里放一张损失函数的机理图:
在这里插入图片描述

2 损失函数

2.1 L1Loss

L1Loss(也称为MAE Loss, 平均绝对误差损失)是一种用于回归任务的损失函数。它用于度量模型的预测值与实际目标之间的绝对差距。L1Loss的数学表达式如下:
L L1 ( Y , Y ′ ) = 1 n ∑ i = 1 n ∣ y i − y i ′ ∣ L_{\text{L1}}(Y, Y') = \frac{1}{n} \sum_{i=1}^{n} |y_i - y_i'| LL1(Y,Y)=n1i=1nyiyi

其中:

  • L L1 ( Y , Y ′ ) L_{\text{L1}}(Y, Y') LL1(Y,Y) 是整个数据集上的L1损失。
  • n n n 是样本数量。
  • y i y_i yi 是第 i i i 个样本的实际目标值。
  • y i ′ y_i' yi 是第 i i i 个样本的模型预测值。

代码实现(Pytorch):

# L1Loss实现
loss = nn.L1Loss()
# 假设为预测值
input = torch.randn(3, 5, requires_grad=True)
# 实际值
target = torch.randn(3, 5)
# 计算损失函数
output = loss(input, target)
# 反向传播
output.backward()

特点:

  • 只计算预测值和真实值之间差的绝对值,对异常值(离群点)不敏感。

L1Loss损失函数适用于回归任务,但是由于其对异常值不敏感的特点,一般情况下效果均没MSELoss 效果好。现在很少使用。。。。

2.2 MSELoss

MSELoss(Mean Squared Error Loss,均方误差损失)是一种用于回归任务的损失函数,通常用于度量模型的预测值与实际目标之间的差距的平方。MSELoss的数学表达式如下:
L MSE ( Y , Y ′ ) = 1 n ∑ i = 1 n ( y i − y i ′ ) 2 L_{\text{MSE}}(Y, Y') = \frac{1}{n} \sum_{i=1}^{n} (y_i - y_i')^2 LMSE(Y,Y)=n1i=1n(yiyi)2

其中:

  • L MSE ( Y , Y ′ ) L_{\text{MSE}}(Y, Y') LMSE(Y,Y) 是整个数据集上的均方误差损失。
  • n n n 是样本数量
  • y i y_i yi 是第 i i i 个样本的实际目标值。
  • y i ′ y_i' yi 是第 i i i 个样本的模型预测值。

代码实现(Pytorch):

loss = nn.MSELoss()
input = torch.randn(3, 5, requires_grad=True)
target = torch.randn(3, 5)
output = loss(input, target)
output.backward()

特点:

  • 对于与实际值偏差较大的点会更加敏感。

MSELoss 广泛用于各种回归任务,算是最经典最常使用的损失函数。。。。

3 总结

到此,使用 损失函数总结(二) 已经介绍完毕了!!! 如果有什么疑问欢迎在评论区提出,对于共性问题可能会后续添加到文章介绍中。如果存在没有提及的损失函数也可以在评论区提出,后续会对其进行添加!!!!

如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦😄。

http://www.lryc.cn/news/196891.html

相关文章:

  • 力扣(LeetCode)2530. 执行 K 次操作后的最大分数(C++)
  • C# 快速简单反射操作
  • 【python高级】设计模式、类工厂、对象工厂
  • Flink的算子列表状态的使用
  • 使用 Github Actions 工作流自动部署 Github Pages
  • Xposed hook 抖音账户信息
  • 回顾 | E³CI效能认知与改进论坛,助力企业研发效能度量和提升
  • 科技的成就(五十二)
  • 【23种设计模式】装饰器模式
  • 解决IDEA中SpringBoot项目创建多个子模块时配置文件小绿叶图标异常问题
  • 【马蹄集】—— 概率论专题
  • Spring 6整合单元测试JUnit4和JUnit5
  • 【好书推荐】深入理解现代JavaScript
  • 高效协同: 打造分布式系统的三种模式
  • 机器学习-无监督学习之聚类
  • 智能垃圾桶丨悦享便捷生活
  • 【数据结构】线性表(一)线性表的定义及其基本操作(顺序表插入、删除、查找、修改)
  • MyBatis的自定义插件
  • 生物制剂\化工\化妆品等质检损耗、制造误差处理作业流程图(ODOO15/16)
  • vbv介绍
  • Linux CentOS 8(网卡的配置与管理)
  • python -m pip install 和 pip install 的区别解析
  • 深度解读js中数组的findIndex方法
  • ICML2021 | RSD: 一种基于几何距离的可迁移回归表征学习方法
  • 中国人民大学与加拿大女王大学金融硕士:在该奋斗的岁月里,对得起每一寸光阴
  • Python基础教程:装饰器的详细教程
  • Apache poi xwpf word转PDF中文显示问题解决
  • Gartner发布2024年十大战略技术趋势
  • 在UniApp中使用uni.makePhoneCall方法调起电话拨打功能
  • 苹果手机怎么刷机?掌握好这个方法!