PyTorch搭建LeNet测试集实现

这篇具有很好参考价值的文章主要介绍了PyTorch搭建LeNet测试集实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

搭建神经网络请看PyTorch搭建LeNet神经网络-CSDN博客

实现训练集请看PyTorch搭建LeNet训练集详细实现-CSDN博客

测试集比较简单,直接上代码。

代码实现

# 导包 不必多说
import torch
import torchvision.transforms as transforms
from PIL import Image
from model import LeNet

# 详细解释见下面
transform = transforms.Compose(
    [transforms.Resize((32, 32)),
     transforms.ToTensor(),
     transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])


# 与训练集一样的分类
classes = ('plane', 'car', 'bird', 'cat',
           'deer', 'dog', 'frog', 'horse', 'ship', 'truck')

# 模型实例化
net = LeNet()
net.load_state_dict(torch.load('LeNet.pth'))  # 载入在训练时保存的权重文件

im = Image.open('3.jpg')
im = transform(im)  # 预处理数据
im = torch.unsqueeze(im, dim=0)  # 将数据中增加一个batch维度

with torch.no_grad():
    outputs = net(im)
    # 寻找最大值所在的index索引值
    predict = torch.max(outputs, dim=1)[1].data.numpy()
# 最后打印预测结果
print(classes[int(predict)])

 预处理数据函数

transform = transforms.Compose(
    [transforms.Resize((32, 32)),
     transforms.ToTensor(),
     transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])

 这一段是将数据预处理,相比于训练集中的数据预处理多了transforms.Resize((32, 32)),因为导入的图片尺寸不一定正确,需要先将图片的尺寸重新定义。

运行结果

我测试了飞机、汽车、鸟,飞机、汽车都可以识别出来。但鸟不行,可能是图片的像素太小,训练不到位。

PyTorch搭建LeNet测试集实现,深度学习,pytorch,人工智能,python,深度学习,机器学习

PyTorch搭建LeNet测试集实现,深度学习,pytorch,人工智能,python,深度学习,机器学习

把鸟给预测成猫了

PyTorch搭建LeNet测试集实现,深度学习,pytorch,人工智能,python,深度学习,机器学习

总结

三天!从0开始,实现了LeNet。跟着b站上的视频,反复观看并记笔记,再自己手敲代码,再写出笔记。代码都能跑通实现,中间遇到的问题也靠自己独立解决了。对于自己来说还是比较有成就感的。但是我知道这点知识对于想要学好深度学习是远远远远不够的。还是要继续不断地学习。这样一篇一篇笔记也是我努力学习的见证!要努力成为很厉害的人!希望大家也是!文章来源地址https://www.toymoban.com/news/detail-838383.html

到了这里,关于PyTorch搭建LeNet测试集实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包