【训练与预测】02 - 完整的模型验证套路

02 - 完整的模型验证套路

模型图

验证一个模型就是指使用已经训练好的模型,然后给它提供输入。

test.py

python 复制代码
import torch
import torchvision
from PIL import Image

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
image_path = r"images/鸡毛.jpg"
# 加入.convert("RGB")可以适应各种格式的图片,例如png是RGBA四个通道,转换后变为类似jpg的三个通道RGB
image = Image.open(image_path).convert("RGB")
# 重新变换图片尺寸,然后转换为张量
transform = torchvision.transforms.Compose([torchvision.transforms.Resize((32, 32)),
                                            torchvision.transforms.ToTensor()])

image = transform(image)
# 输出图片尺寸
print(image.shape)
# 加载模型
model = torch.load(r"myNet_pth/myNet_trained_9.pth")
# 将模型用GPU加载
model = model.to(device)
# 使用图片
image = torch.reshape(image, (1, 3, 32, 32))
# 将图片用GPU加载
image = image.to(device)
# 模型设置为测试模式
model.eval()
# 忽略梯度
with torch.no_grad():
    output = model(image)

print(output)
print(output.argmax(1))

注意,如果是使用GPU保存的模型,然后使用CPU预测的话,需要在torch.load中加入另一个参数:map_location=torch.device("cpu")

这边我使用一个epoch=30的模型进行预测。

CIFAR10数据集的输出对应类别:

相关推荐
新知图书几秒前
14.2 多模态试驾预约Agent的系统架构
人工智能·深度学习·ai agent·智能体
2603_966302754 分钟前
专业AI视频生成工具怎么选:主链路、单点与后期的分工逻辑
人工智能
jianqiang.xue4 分钟前
专栏简介:《嵌入式 AI 智能体设计实战》
人工智能·stm32·单片机·物联网·架构·esp32
宋哥转AI6 分钟前
深入理解 AI Agent · 多 Agent 编排 #03:Supervisor 与 Orchestrator——Dream-SaaS 双层编排架构拆解
java·人工智能·ai
逻辑君6 分钟前
ANNA 7.6 知识智能引擎白皮书
人工智能·机器学习
叠层归一研究院7 分钟前
基于区分本源的此刻存在唯一性本体论推演
人工智能·算法
维核科技9 分钟前
三个业务共用一台服务器,显存不够用了
大数据·服务器·人工智能
听我哔哔9 分钟前
AI 漫剧制作步骤全流程分享:从剧本到成片的个人实操记录
人工智能·ai漫剧·漫剧制作
Bode_200211 分钟前
AI工具/大模型学习
人工智能·学习
桐盛科技14 分钟前
什么是边缘计算网关?桐盛科技拆解智慧公厕与能碳管理选型指南
人工智能·边缘计算