20. 损失函数

损失函数
1. 损失函数的作用
  • 损失函数用于衡量预测值和真实之间的误差关系,用于后续的模型参数调整也就是模型训练过程中的参数指导
  • pytorch的nn模块中包含了回归任务、分类任务的诸多损失函数计算方式,网址(https://pytorch.org/docs/stable/nn.html#loss-functions)中给出了各种损失函数的调用结构,以及详细的损失函数的使用说明
2.MSELoss介绍
  • nn模块中直接集成了具体的损失函数,通过下面的代码可以创建一个损失函数类的实例

    python 复制代码
    from torch import nn
    loss = nn.MSELoss(reduction)
    • reduction:用于指定计算误差的方法是取均值还是总和

      • reduction="sum"时损失函数的计算方式为
        l o s s = ∑ i n ( x i − y i ) 2 loss = \sum_{i}^{n}{(x_i - y_i)^2} loss=i∑n(xi−yi)2

      • reduction="mean"时损失函数的计算方式为
        l o s s = ∑ i n ( x i − y i ) 2 n loss={\sum_{i}^{n}{(x_i-y_i)^2} \over n} loss=n∑in(xi−yi)2

  • 使用创建的实例进行一个简单计算

    python 复制代码
    result_loss = loss(input, target)
    • input targe:分别是输入和输出,使用损失函数时要特别注意数据维度的问题(通常情况下 input.shape == target.shape),官方文档中可以查看的每个函数的对数据输入和输出的维度的要求
3. CrossEntropyLoss介绍
  • 交叉熵损失函数一般用于在分类特别是多分类问题中,衡量的是模型预测的概率分布与真实分布之间的差异数值越小表示模型预测越接近真实标签。nn模块中集成了这个交叉熵损失函数

    python 复制代码
    loss = nn.CrossEntropyLoss()
  • nn模块中的 CrossEntropyLoss对于输入数据是集成了 softmax概率计算的,所以对于网络结构得到的数据直接投入损失函数中计算即可,不需要单独进行softmax:

    python 复制代码
    result_loss = loss(input, target)
    • 同样是需要注意维度要求,常见情况如下所示:
      • input(C) --> target(1): 具体情况为一个样本会生成对C个类别的预测概率,而target只需要具体指定当前样本的类别是什么就可以
      • input(N, C) --> target(N):具体情况为,样本集合的batch_size=N,target给出了每一个样本本的类别序号
相关推荐
云和数据.ChenGuang2 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
西西木科技丨Shopify开发机构3 小时前
CalDigit TS4案例:AI产品图的Shopify整站接入与验收
人工智能·shopify·独立站
2601_965448873 小时前
AI视频制作:做系列节气民俗视频音色不统一,AI 音色克隆省事的方法
人工智能·机器学习·音视频
美狐美颜SDK开放平台3 小时前
视频美颜SDK试用DEMO阶段应该测试什么?直播APP接入实操指南
开发语言·人工智能·深度学习·音视频·美颜sdk·直播美颜sdk·第三方美颜sdk
HRaitest3 小时前
秋招技术岗招聘提效:三类 AI 招聘方案的技术底层与选型逻辑
大数据·人工智能·求职招聘·ai-native
天远数科4 小时前
零信任架构实战:基于天远企业股权变更构建自动化商业银行对公授信存续期股权异动与资产抽逃预警网关
运维·人工智能·架构·自动化
车软学堂4 小时前
从测试转开发,到底要补什么
网络·人工智能·python·功能测试·单片机·车载系统·自动化
海盗12344 小时前
AI 新闻日报 10-28:Atria Dawn 完整版开源、Cursor Agent SDK 转正、Genie 4 实时世界模型
人工智能·机器人·开源·人工智能aigc
志尊宝5 小时前
AI原生前端开发(035):AI时代的工程化最佳实践总结
人工智能·ai-native
冬奇Lab5 小时前
一天一个开源项目(第251篇):Claude SEO —— 装进 Claude Code 的 SEO 审计团队,26 个子技能 + 19 个专家 Agent 并行体检网站
人工智能·开源