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

相关推荐
Elivs11 分钟前
RMSNorm函数
人工智能·算法·机器学习
2401_8322981013 分钟前
AI安全与全球治理:构建可控可信的智能发展新秩序
人工智能
Akir.weiwen15 分钟前
跨层禁止:机器如何拦截非法语义绑定
人工智能·设计规范·语义
xiakq22 分钟前
2026 年八大 LLM API 横评:DeepSeek V4 vs GPT-4o vs Claude vs Gemini
人工智能·gpt·ai·claude
u01030552725 分钟前
Java图像处理实战指南
人工智能·1024程序员节
铃木之影33 分钟前
Java 版本 RAG 示例(Spring AI + Milvus)
java·人工智能·spring
小马过河R34 分钟前
AI Coding应用上线安全实践指南
人工智能·安全·安全架构·engineering·ai coding·harness
@Mr_LiuYang35 分钟前
《深入理解 AI Agent:设计原理与工程实践 》实验2-1 本地大模型服务部署与工具调用
人工智能·大模型·本地化部署·深入理解ai agent
Zkaisen43 分钟前
第三章 · 大语言模型基础(详尽展开版)
人工智能·语言模型·自然语言处理
todoitbo1 小时前
MongoDB迁移:从烟囱式部署走向 KES-AI 时代融合数据库架构
人工智能·mongodb·数据库架构·国产数据库·kingbasees