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

相关推荐
Data-Miner4 分钟前
Excel-Agent永久买断,一款结合AI Agent的excel数据处理智能体
人工智能·excel
sunfove4 分钟前
从信息熵到决策边界:决策树算法的第一性原理与深度解析
算法·决策树·机器学习
北京耐用通信5 分钟前
耐达讯自动化Profibus总线光纤中继器在连接测距仪中的应用
人工智能·物联网·网络协议·网络安全·自动化·信息与通信
MoonBit月兔6 分钟前
MoonBit 获日本最大技术社区Zenn原生支持,热度持续上升中!
人工智能·ai编程·moonbit
高频交易dragon6 分钟前
配对交易策略大观
大数据·人工智能
我叫张土豆6 分钟前
2026最强实战:用《三国演义》把 KAG(知识增强生成)跑通:LLM抽取知识图谱→Neo4j入库→召回评测→图谱问答闭环(附完整测试代码)
人工智能·知识图谱·neo4j
Roye_ack7 分钟前
【Mac 实战】简单知识图谱搭建步骤详解(Neo4j + py2neo)
人工智能·知识图谱·neo4j·py2neo
Niuguangshuo8 分钟前
CLIP:连接图像与文本的 AI 核心工具
人工智能·神经网络·算法
悟纤9 分钟前
什么是音乐旋律?——AI 音乐创作的完整指南 | Suno高级篇 | 第25篇
人工智能·suno·suno ai·suno api·ai music
(; ̄ェ ̄)。9 分钟前
机器学习入门(九)为什么sklearn正规方程法矩阵不可逆却可以计算出结果
机器学习·矩阵·sklearn