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

相关推荐
Z-D-K6 分钟前
一个AI的真实日记(3)
人工智能·ai·aigc·人机交互·agent·agi
ivywriter10 分钟前
【数字孪生】到底能解决什么实际问题?
大数据·人工智能·机器人
(轻舟已过万重山)13 分钟前
第39章 评估迭代:上线只是开始,迭代才是关键
大数据·数据库·人工智能
听你说3214 分钟前
鹏辉LIC+EDLC高功率电容解决方案,为工业自动化、智能IoT、UPS备电等高负载设备而生
人工智能·物联网·自动化·创业创新
墨染天姬18 分钟前
【AI】从MOE混合专家到 MOA混合智能体
人工智能
甲维斯20 分钟前
国产版“Claude Code”也支持电脑控制了,kimi也是越用越爽了!
人工智能
KKKlucifer23 分钟前
AI 驱动告警研判:运营商智能化安全运维支撑服务实践案例
人工智能·安全
仙女修炼史27 分钟前
word2Vec理解(下):本质理解
人工智能·自然语言处理·word2vec
惊鸿一博29 分钟前
# 生成模型(Generative Models)基础介绍_四大分类_扩散模型介绍
人工智能
漏刻有时33 分钟前
PHP 5.6 老系统接入 DeepSeek AI:错别字检查 / 文案解读 / 智能问答,三合一实战方案
人工智能