当前位置: 首页 > news >正文

11-pytorch-使用自己的数据集测试

b站小土堆pytorch教程学习笔记

在这里插入图片描述

import torch
import torchvision
from PIL import Image
from torch import nnimg_path= '../imgs/dog.png'
image=Image.open(img_path)
print(image)
# image=image.convert('RGB')transform=torchvision.transforms.Compose([torchvision.transforms.Resize((32,32)),torchvision.transforms.ToTensor()])
image=transform(image)
print(image.shape)#加载模型
class Han(nn.Module):def __init__(self):super(Han, self).__init__()self.model = nn.Sequential(nn.Conv2d(3, 32, kernel_size=5, stride=1, padding=2),nn.MaxPool2d(2),nn.Conv2d(32, 32, kernel_size=5, stride=1, padding=2),nn.MaxPool2d(2),nn.Conv2d(32, 64, kernel_size=5, stride=1, padding=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 xmodel=torch.load('../han_9.pth',map_location=torch.device('cpu'))#将GPU上运行的模型转移到CPU
print(model)#对图片进行reshap
image=torch.reshape(image,(-1,3,32,32))#将模型转化为测试类型
model.eval()
with torch.no_grad():#节约内存output=model(image)
print(output)print(output.argmax(1))

<PIL.PngImagePlugin.PngImageFile image mode=RGB size=306x283 at 0x250B0006EE0>
torch.Size([3, 32, 32])
Han(
(model): Sequential(
(0): Conv2d(3, 32, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))
(1): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(2): Conv2d(32, 32, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))
(3): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(4): Conv2d(32, 64, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))
(5): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(6): Flatten(start_dim=1, end_dim=-1)
(7): Linear(in_features=1024, out_features=64, bias=True)
(8): Linear(in_features=64, out_features=10, bias=True)
)
)
tensor([[-2.0302, -0.6256, 0.7483, 1.5765, 0.2651, 2.2243, -0.7037, -0.5262,
-1.4401, -0.6563]])
tensor([5])
Process finished with exit code 0

预测正确!
在这里插入图片描述

相关文章:

  • 回归预测 | Matlab实现CPO-HKELM冠豪猪算法优化混合核极限学习机多变量回归预测
  • Vue模板引用之ref特殊属性
  • 说说UE5中的几种字符串类
  • 力扣爆刷第80天--动态规划一网打尽子序列一维二维连续不连续变体
  • Excel工作表控件实现滚动按钮效果
  • 20.scala视图界定
  • 题目 1124: C语言训练-大、小写问题
  • matlab一维二维和三维RBF插值方法
  • 第7.1章:StarRocks性能调优——查询分析
  • 多输入时序预测|WOA-CNN|鲸鱼算法优化的卷积神经网络时序预测(Matlab)
  • 计算机网络面经-从浏览器地址栏输入 url 到显示主页的过程?
  • LeetCode 2433.找出前缀异或的原始数组
  • 5 buuctf解题
  • 淘宝京东1688实时API商品详情数据解析:获取市场最新趋势
  • 基于Java SSM框架实现高考填报信息系统项目【项目源码】
  • 30秒的PHP代码片段(1)数组 - Array
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • bearychat的java client
  • Java方法详解
  • Node项目之评分系统(二)- 数据库设计
  • Tornado学习笔记(1)
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • windows-nginx-https-本地配置
  • Yii源码解读-服务定位器(Service Locator)
  • 官方解决所有 npm 全局安装权限问题
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 前言-如何学习区块链
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 再谈express与koa的对比
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • ​用户画像从0到100的构建思路
  • #pragma预处理命令
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (二)linux使用docker容器运行mysql
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (四)JPA - JQPL 实现增删改查
  • (原創) 物件導向與老子思想 (OO)
  • (转)winform之ListView
  • (转)菜鸟学数据库(三)——存储过程
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .net core 连接数据库,通过数据库生成Modell
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .NET/C# 使用反射调用含 ref 或 out 参数的方法
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .NET开源全面方便的第三方登录组件集合 - MrHuo.OAuth
  • .project文件
  • [ 第一章] JavaScript 简史
  • [] 与 [[]], -gt 与 > 的比较
  • [2016.7 day.5] T2
  • [3D基础]理解计算机3D图形学中的坐标系变换
  • [AIGC] SQL中的数据添加和操作:数据类型介绍
  • [ASP.NET MVC]Ajax与CustomErrors的尴尬