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

PyTorch入门学习(十九):完整的模型验证套路

目录

一、图像加载和数据转换

二、模型加载

三、前向推理

四、结果解释


一、图像加载和数据转换

首先,需要加载待验证的图像,并将其转换为模型期望的输入大小和数据类型。以下是加载图像并进行数据转换的示例:

import torch
import torchvision
from PIL import Image
from torch import nn# 指定待验证的图像路径
image_path = "D:\\Python_Project\\pytorch\\imgs\\airplane.png"# 加载图像
image = Image.open(image_path)
image = image.convert('RGB')  # 将图像转为RGB通道# 数据转换
transform = torchvision.transforms.Compose([torchvision.transforms.Resize((32, 32)),torchvision.transforms.ToTensor()])image = transform(image)

二、模型加载

在进行模型验证之前,需要加载已经训练好的深度学习模型。以下是加载模型的示例:

model = torch.load("tudui_29.pth", map_location=torch.device('cpu'))  # 加载训练模型
model.eval()  # 设置模型为评估模式

三、前向推理

现在,可以进行前向推理,将待验证图像输入模型,获得模型的输出。这一步非常关键,因为它用于生成模型的预测结果。

# 为图像添加批次维度
image = torch.reshape(image, (1, 3, 32, 32))# 执行前向推理
with torch.no_grad():  # 使用no_grad上下文管理器以节约内存output = model(image)

四、结果解释

最后,可以解释模型的输出结果。在分类问题中,通常输出是一个概率分布,可以取概率最高的类别作为模型的最终预测。

# 输出结果是一个概率分布,选择概率最高的类别
predicted_class = output.argmax(1)
print("模型的预测类别:", predicted_class)

通过以上步骤,可以完整地进行深度学习模型的验证,包括加载图像、进行数据转换、加载模型、执行前向推理和解释结果。这些步骤有助于评估模型的性能和准确性,为实际应用提供有力的支持。

参考资料:

视频教程:PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】

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

相关文章:

  • YOLO目标检测数据集大全【含voc(xml)、coco(json)和yolo(txt)三种格式标签+划分脚本+训练教程】(持续更新建议收藏)
  • PHP保存时自动删除末尾的空格,phpstorm自动删除空白字符串
  • 2022 icpc杭州站 C. No Bug No Game - 背包dp
  • Temp directory ‘C:\WINDOWS\TEMP‘ does not exist
  • 【单片机基础小知识-如何通过指针来读写寄存器】
  • CountDownTimer倒计时使用
  • MySQL索引事务存储引擎
  • 【服务器使用】vscode winscp进行服务器容器连接(含修改初始密码)
  • Go和JavaScript结合使用:抓取网页中的图像链接
  • 通信协议---串口、RS232、RS485
  • UE5 c++将自定义UserWdiget添加到对应菜单栏
  • 三级缓存【又称提前暴露(early exposure)】
  • 【ARM Coresight 系列文章 3.5 - ARM Coresight -- JTAG-DP(JTAG Debug Port) 详细介绍】
  • 【笔记】回顾JavaWeb结合自身开发的项目——分层解耦与IOC、MySQL简单查询
  • Modelsim 使用教程(5)——Analyzing Waveforms
  • String-固长字符串序列
  • RABC权限模型与Spring Security
  • linux 编译lpthread
  • 工业自动化工厂PLC远程控制网关物联网应用
  • Nginx 实现负载均衡
  • 浅谈测试需求分析
  • 18、Python的编码规范:PEP 8介绍及基本遵循原则
  • AI:48-基于卷积神经网络的气象图像识别
  • AI:64-基于深度学习的口罩佩戴检测
  • Time series analysis of InSAR data: Methods and trends(NASA,2015)
  • 视频集中存储/云存储EasyCVR启动后查询端口是否被占用出错,该如何解决?
  • 【JMeter】后置处理器的分类以及场景介绍
  • 即时通讯技术文集(第22期):IM安全相关文章(Part1) [共13篇]
  • Node Sass version 9.0.0 is incompatible with ^4.0.0.
  • 【STL】:list的模拟实现