小土堆-pytorch-神经网络-完整的验证套路16_笔记

模型的保存:
在这里插入图片描述
当你在cpu上使用gpu训练的模型时

model=torch.load(r"E:\pycharm\Py_Projects\logs\tudui_2.pth")
改为(就是把gpu训练完的东西映射到gpu上)
model=torch.load(r"E:\pycharm\Py_Projects\logs\tudui_2.pth",map_location=torch.device('cpu') 

标签对应图片类型:
在这里插入图片描述
完整的验证套路:

# 在网上,随便找一个狗的图片,把这个狗的图片放到任一一个文件夹下,这里我们放到test_picture文件夹里
import torch
import torchvision
from PIL import Image
# 在test.py下访问我们刚才复制的图片文件
from torch import nn

img_path=r"E:\pycharm\Py_Projects\test_picture\dog.png"
image=Image.open(img_path)
print(image)
image=image.convert('RGB') # 因为png格式是四个通道,除了RGB三通道外,还有一个透明度通道,所以我们调用image=image.convert('RGB'),保留颜色通道

transform=torchvision.transforms.Compose([torchvision.transforms.Resize((32,32)),torchvision.transforms.ToTensor()])         # compose是把几个transform联例在一起 ,model中inputs的图片类型得是32*32大小的

image=transform(image)
print(image.shape)


# 找到网络模型,先把网络模型copy进去
class Tudui(nn.Module):
    def __init__(self):
        super(Tudui, self).__init__()
        self.model=nn.Sequential(
            nn.Conv2d(3,32,5,1,2) , # 其中padding=2 是通过计算得出的,也可以写-1自动计算
            nn.MaxPool2d(2),
            nn.Conv2d(32,32,5,1,2),
            nn.MaxPool2d(2),
            nn.Conv2d(32,64,5,1,2),
            nn.MaxPool2d(2),
            nn.Flatten(),
            nn.Linear(64*4*4,64),
            nn.Linear(64,10)
        )
    def forward(self,x):
        x=self.model(x)
        return x


# 加载网络模型

model=torch.load(r"E:\pycharm\Py_Projects\logs\tudui_29_gpu.pth",map_location=torch.device("cpu"))
image=torch.reshape(image,(1,3,32,32))
model.eval() # model转换为测试类型
with torch.no_grad():       # 节约性能
     output=model(image)
print(output)
print(output.argmax(1)) # 把output的那10项中最接近的输出出来

选用第30轮gpu训练的模型进行训练
预测结果:
在这里插入图片描述

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-22 17:48:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-22 17:48:01       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-22 17:48:01       82 阅读
  4. Python语言-面向对象

    2023-12-22 17:48:01       91 阅读

热门阅读

  1. 如何在Go中发起HTTP请求

    2023-12-22 17:48:01       79 阅读
  2. Ubuntu2204安装小熊猫C++/DevCpp

    2023-12-22 17:48:01       74 阅读
  3. MySQL数据备份

    2023-12-22 17:48:01       65 阅读
  4. mysql 表锁 行锁

    2023-12-22 17:48:01       56 阅读
  5. openstack-keystone服务

    2023-12-22 17:48:01       49 阅读
  6. SQL server 数据库 SQL语句高级用法

    2023-12-22 17:48:01       44 阅读
  7. GO设计模式——25、模板模式(行为型)

    2023-12-22 17:48:01       59 阅读
  8. ThreadLocal和Synchronized的用法和区别

    2023-12-22 17:48:01       65 阅读
  9. 6.1 指针的认识

    2023-12-22 17:48:01       63 阅读