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

【深度学习】03-神经网络2-1损失函数

在神经网络中,不同任务类型(如多分类、二分类、回归)需要使用不同的损失函数来衡量模型预测和真实值之间的差异。选择合适的损失函数对于模型的性能至关重要。

这里的是API 的注意⚠️,但是在真实的公式中,目标值一定是热编码之后的,但是在API中可以是热编码之前的。

热编码指的是:假设一个目标值是【0,1,2,3,4】

热编码是,默认会找你的最大值去,确定有多少个0,因为0也算一个位置,所以如果最大值为5,那么就一共有6位(0,1,2,3,4,5

# 多分类的损失,热编码之前import torch
import torch.nn as nn
# 真实值
y_true = torch.tensor([2,3],dtype=torch.int64)
y_predict = torch.tensor([[10,20,35,20,23],[23,22,22,26,12]],dtype=torch.float32)# 损失计算
loss = nn.CrossEntropyLoss()
print(loss(y_predict,y_true))

tensor(0.0414)

#多分类损失,热编码之后
import torch
import torch.nn as nn
# 真实值
# y_true = torch.tensor([2,3],dtype=torch.int64)
y_true= torch.tensor([[0,0,1,0],[0,0,0,1]],dtype=torch.float32)
y_predict = torch.tensor([[10,20,35,20],[23,22,22,26]],dtype=torch.float32)# 损失计算
loss = nn.CrossEntropyLoss()
print(loss(y_predict,y_true))

tensor(0.0414)

# 二分类的损失import torch
import torch.nn as nn
# 真实值
y_true = torch.tensor([0,0,1],dtype=torch.float32)# 预测值
y_predict= torch.tensor([0.2,0.1,0.8],dtype=torch.float32)# 损失计算
loss = nn.BCELoss()
print(loss(y_predict,y_true))

tensor(0.1839)

 L1 这个损失函数最大的特点是: 零点不平滑,导致不可导,跳过极小值,所以不会用来做损失函数,而是做正则化用来缓解过拟合。

L2 的特点是,当初始值的给的不好,导致预测值和目标值差异大的时候,会产生梯度爆炸,所以我们也不用这个损失函数,而是做正则化来缓解过拟合。
把L1 和 L2 损失函数,联合起来。就是我们的 smooth L1 损失函数
import torch
import torch.nn as nn# 真实值
y_true = torch.tensor([1.0,2.0,3.0])# 预测值
y_predict= torch.tensor([2.0,2.5,5.0])# 损失计算
l1 = nn.L1Loss()
l2 = nn.MSELoss()
sml1 = nn.SmoothL1Loss()
print(l1(y_predict,y_true))
print(l2(y_predict,y_true))
print(sml1(y_predict,y_true))

对于回归任务建议使用的 SmoothL1 损失。

相关文章:

【深度学习】03-神经网络2-1损失函数

在神经网络中,不同任务类型(如多分类、二分类、回归)需要使用不同的损失函数来衡量模型预测和真实值之间的差异。选择合适的损失函数对于模型的性能至关重要。 这里的是API 的注意⚠️,但是在真实的公式中,目标值一定是…...

Python爬虫APP程序:构建智能化数据抓取工具

在信息爆炸的时代,数据的价值日益凸显。Python作为一种强大的编程语言,与其丰富的库一起,为爬虫程序的开发提供了得天独厚的优势。本文将探讨如何使用Python构建一个爬虫APP程序,以及其背后的思维逻辑。 什么是Python爬虫APP程序&…...

第五部分:2---中断与信号

目录 操作系统如何得知哪个外部资源就绪? 什么是中断机制? CPU引脚和中断号的关系: 中断向量表: 信号和中断的关系: 操作系统如何得知哪个外部资源就绪? 操作系统并不会主动轮询所有外设来查看哪些资源…...

梧桐数据库(WuTongDB):SQL Server Query Optimizer 简介

SQL Server Query Optimizer 是 SQL Server 数据库引擎的核心组件之一,负责生成查询执行计划,以优化 SQL 查询的执行性能。它的目标是根据查询的逻辑结构和底层数据的统计信息,选择出最优的查询执行方案。SQL Server Query Optimizer 采用基于…...

Scrapy框架介绍

一、什么是Scrapy 是一款快速而强大的web爬虫框架,基于Twusted的异步处理框架 Twisted是事件驱动的 Scrapy是由Python实现的爬虫框架 ① 架构清晰 ②可扩展性强 ③可以灵活完成需求 二、核心组件 Scrapy Engine(引擎):Scrapy框架…...

Facebook对现代社交互动的影响

自2004年成立以来,Facebook已经成为全球最大的社交媒体平台之一,改变了人们的交流方式和社交互动模式。作为一个数字平台,Facebook不仅为用户提供了分享生活点滴的空间,也深刻影响了现代社交互动的各个方面。本文将探讨Facebook如…...

Java项目运维有哪些内容?

Java项目运维的内容主要包括环境准备、部署Java应用、配置和优化、安全配置、以及数据安全保护措施,服务的运行和资源动态监控管理。‌ ‌1,环境准备‌:这包括选择适合运行Java和Tomcat的操作系统,如Ubuntu、CentOS等Linux发行版…...

【学习笔记】MIPI

MIPI介绍 MIPI是由ARM、Nokia、ST、IT等公司成立的一个联盟,旨在把手机内部的接口如存储接口,显示接口,射频/基带接口等标准化,减少兼容性问题并简化设计。 MIPI联盟通过不同的工作组,分别定义一系列手机内部的接口标…...

QMake 脚本知识点记录

1. 简单工程配置 QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11CONFIG debug # debug/release HEADERS demo.h # 头文件 列表 SOURCES main.cpp demo.cpp # 源文件 列表 FORMS mainwin.ui # 窗体 列表…...

Kubernetes配置管理(kubernetes)

实验环境: 在所有节点上拉取镜像;然后把资源清单拉取到第一个master节点上; 同步会话,导入镜像: configmap/secret 配置文件的映射 变量: 基于valuefrom的方式 cm--》pod 特点:变量的名称可…...

macOS与Ubuntu虚拟机使用SSH文件互传

1.ubuntu配置: 安装openssh服务: sudo apt-get install openssh-server -y 查看服务启动状态: systemctl status ssh 2.macOS使用scp连接ubuntu并发送文件 查看ubuntu IP : ifconfigmacOS终端连接ubuntu : sc...

defineExpose 显式导出子组件方法

当父组件调用子组件的script setup中的方法时&#xff0c;必须显式导出该方法。因为 script setup 中定义的变量和方法默认是局部的&#xff0c;只有显式导出后&#xff0c;父组件才能访问这些方法。 //父组件-Parent <template><el-button type"primary" …...

vue 解决列表界面进入明细返回查询条件不变

在Vue中&#xff0c;如果你遇到了列表界面进入详情页面后返回查询条件不变的问题&#xff0c;可能是因为你没有正确地管理状态或者是使用了不合适的组件间通信方式。 解决方案通常涉及到以下几点&#xff1a; 使用Vuex来管理状态&#xff0c;确保查询条件保存在全局状态树中&…...

华为NAT ALG技术的实现

双向NAT技术&#xff1a;经过防火墙的2报文源IP地址和目的IP地址都同时被转换&#xff0c;外网发送报文给内网服务器&#xff0c;先转换目的IP地址&#xff0c;然后符合安全策略后&#xff0c;在替换源IP地址&#xff0c;然后将记录写入防火墙会话表&#xff0c;并发送出报文&a…...

【移植】轻量系统STM32F407芯片移植案例

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ 持续更新中…… 介绍基于 STM32F407IGT6 芯片在拓维信息 Niobe407 开发板上移植 Op…...

k8s 修炼手册

deployment apiVersion: apps/v1 kind: Deployment metadata:name: hello-deploy spec:replicas: 10selector:matchLabels:app: hello-world # Pod的label # 这个Label与Service的Label筛选器是匹配的revisionHistoryLimit: 5progressDeadlineSeconds: 300minReadySeconds: 10…...

重回1899元,小米这新机太猛了

如果不出意外&#xff0c;距离高通年度旗舰骁龙 8 Gen4 发布还剩下不到一个月时间。 对于以小米 15 为首即将到来的下半年各家旗舰机型厮杀画面&#xff0c;讲道理小忆早已是备好瓜子儿摆上果盘翘首以盼了。 不过在这之前&#xff0c;中端主流选手们表示有话要说&#xff1a;为…...

jmeter本身常用性能优化方法

一、常用配置&#xff1a; 修改Jmeter.bat文件&#xff0c;调整JVM参数(修改jmeter本身的最小最大堆内存)&#xff0c;默认都是1个G set HEAP-Xms5g -Xmx5g -XX:MaxMetaspaceSize256m我的本机内存是8G&#xff0c;那最大可以设置870%(本机内存的70%) 这里我设置的5g 如果有…...

Vue3中el-table组件实现分页,多选以及回显

el-table组件实现分页&#xff0c;多选以及回显 需求思路1、实现分页多选并保存上一页的选择2、记录当前选择的数据3、默认数据的回显 完整代码 需求 使用 dialog 显示 table&#xff0c;同时关闭时销毁el-table 表格多选回显已选择的表格数据&#xff0c;分页来回切换依然正确…...

柯桥韩语学校|韩语每日一词打卡:회갑연[회가변]【名词】花甲宴

今日一词:회갑연 韩语每日一词打卡&#xff1a;회갑연[회가변]【名词】花甲宴 原文:인구 노령화에 따라서 요즘 회갑연보다는 고희연을 더 많이 지냅니다. 意思&#xff1a;随着人口老龄化&#xff0c;最近比起花甲宴&#xff0c;更多人办古稀宴。 【原文分解】 1、인구[인구]…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时&#xff0c;发现没有set类的方法&#xff0c;只有get&#xff0c;那么要改变tree值&#xff0c;只能遍历treeData&#xff0c;递归修改treeData的checked&#xff0c;发现无法更改&#xff0c;原因在于check模式下&#xff0c;子元素的勾选状态跟父节…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...