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

相关推荐
山东布谷网络科技4 分钟前
对标Yalla和Chamet:海外直播语聊APP中多人派对房的关键技术细节
java·开发语言·人工智能·php·语音识别·软件需求·海外电商系统开发
爱吃rabbit的mq5 分钟前
第27章:模型部署:从训练到生产
人工智能·ai·语言模型
智能汽车人5 分钟前
自动驾驶---无地图导航
人工智能·机器学习·自动驾驶
feasibility.10 分钟前
基于Qwen3-VL多模态嵌入/重排序模型+Dify(docker)工作流的电商图文检索系统
人工智能·docker·多模态·教育电商·dify·rag·智能体/工作流
软件算法开发11 分钟前
基于莱维飞行和混沌映射PSO优化的LSTM网络模型的一维时间序列预测matlab仿真
人工智能·matlab·lstm·时间序列预测·混沌-莱维pso优化
、BeYourself12 分钟前
Spring AI 文档切片策略优化指南
java·人工智能·spring
emfuture13 分钟前
工业机器人、自动化系统与PLC编程的协同关系
人工智能·机器人·自动化
无忧智库18 分钟前
智能驾驶的“数字引擎“:解密某汽车集团“十五五“车路云一体化数据空间与自动驾驶训练平台(WORD)
人工智能·机器学习·自动驾驶
云道轩18 分钟前
2025年AI智能体框架选择完全指南
人工智能·智能体·langflow
乾元19 分钟前
加密流量: 不解密情况下通过流特征识别恶意载荷
网络·人工智能·安全·web安全·机器学习·架构·安全架构