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

相关推荐
aiguangyuan1 分钟前
从零构建字符级RNN:用PyTorch实现莎士比亚风格文本生成
人工智能·python·nlp
Leeniux_2 分钟前
高速道面病害检测项目-智能化的实现
深度学习·目标检测
Yiyaoshujuku10 分钟前
疾病的发病率、发病人数、患病率、患病人数、死亡率、死亡人数查询网站及数据库
数据库·人工智能·算法
larance14 分钟前
机器学习分类和设计原则
人工智能·机器学习·分类
boring_11116 分钟前
AI时代本质的思考
网络·人工智能·智能路由器
红尘炼丹客17 分钟前
论文《LLM-in-Sandbox Elicits General Agentic Intelligence》解析
人工智能·深度学习·大模型·llm-in-sandbox
青主创享阁19 分钟前
玄晶引擎:基于多模态大模型的全流程AI自动化架构设计与落地实践
运维·人工智能·自动化
世优科技虚拟人22 分钟前
从吉祥物“复活”到AI实训:世优科技数字人赋能智慧校园升级
人工智能
jiang_changsheng23 分钟前
comfyui节点插件笔记总结新增加
人工智能·算法·计算机视觉·comfyui
BEOL贝尔科技23 分钟前
通过采集器监测环境的温湿度如果这个采集器连上网络接入云平台会发生什么呢?
网络·人工智能·数据分析