【训练与预测】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数据集的输出对应类别:

相关推荐
虹科汽车电子3 分钟前
自动驾驶域控开发与测试实践:虹科车载以太网方案赋能L3量产落地
人工智能·自动驾驶·车载以太网·车辆网络通讯测试·自动驾驶域控开发
Ricardo-Yang11 分钟前
使用GEE以及LandSat8植被指数NDVI计算
python·深度学习·神经网络·算法·视觉检测
Derrick__113 分钟前
LangChain基础实战手记:如何给大模型装上“大脑(记忆)”和“双手(工具)”?
人工智能·python·langchain·个人开发
RSTJ_162520 分钟前
PYTHON+AI LLM DAY FOURTY-THREE
开发语言·人工智能·python
Volunteer Technology21 分钟前
SpringAI(二)Models 模型介绍
开发语言·人工智能·python
霸道流氓气质24 分钟前
Spring AI 实战:Ollama 本地模型工具调用与 Prompt 模板全解析
人工智能·spring·prompt
俊哥V27 分钟前
每日 AI 研究简报 · 2026-05-12
人工智能·ai
哥布林学者28 分钟前
深度学习进阶(二十一)跨窗口的 RPE
机器学习·ai
鸿怡ICsocketgirl29 分钟前
芯片老化座有哪些应用场景?-半导体制造
人工智能·python·制造
墨染天姬31 分钟前
【AI】comfy UI详解
人工智能·ui