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

相关推荐
天天被压力6 小时前
【跨市场数据实战 #08】可转债折价机会怎么筛:3个接口抓比价、列表和实时盘口
java·人工智能·python
baopixiaoz6 小时前
BeeQuant × BeeAgent:用AI加速策略验证
大数据·人工智能·python·区块链
咸鱼老弟6 小时前
AI Agent 的"自主性悖论"——为什么给它的自由度越大,越要配一套更硬的护栏
前端·人工智能
tq10866 小时前
对字节AI战略的评价
人工智能
专职八阿哥7 小时前
GPT-6 Astar 是什么?从模型名称、A*算法到实际接入讲清楚
人工智能
龙腾AI白云7 小时前
大语言模型:从语言理解到通用智能的跃迁
数据库·人工智能·机器学习·知识图谱
EatFans7 小时前
AI Agent 为什么总是失忆?一篇讲透 Agent Memory
人工智能
sijiaoh7 小时前
用 Jev 写了个按意思搜的 grep
人工智能
智商网输送线配件7 小时前
2026 自动化流水线配件采购难题破解:小批量混批与非标定制的供应链实测
大数据·人工智能·自动化·智商网·流水线设备配件
武子康8 小时前
Codex 后台任务结束了,为什么还不能直接接着用?
人工智能·llm·agent