神经网络入门实战:(十四)pytorch 官网内置的 CIFAR10 数据集,及其网络模型

(一) pytorch 官网内置的网络模型

图像处理:

Models and pre-trained weights — Torchvision 0.20 documentation

(二) CIFAR10数据集的分类网络模型(仅前向传播):

下方的网络模型图片有误,已做修改,具体情参考代码。

在这里插入图片描述

1)代码如下:

Sequential() 函数的 demo
Sequential() 函数可以快速定义一个前馈神经网路,按顺序堆叠不同的层,但是要保证层之间的输入和输出尺寸要匹配。

import torch
from torch import nn
import torchvision
from torchvision import transforms
from torch.utils.data import DataLoaderclass CIFAR10_NET(nn.Module):def __init__(self):super(CIFAR10_NET, self).__init__()self.conv1 = nn.Conv2d(3, 32, 5,padding=2) # 输入输出尺寸相同,故根据公式计算出padding的值self.pool1 = nn.MaxPool2d(2, 2)self.conv2 = nn.Conv2d(32, 32, 5,padding=2)self.pool2 = nn.MaxPool2d(2, 2)self.conv3 = nn.Conv2d(32, 64, 5,padding=2)self.pool3 = nn.MaxPool2d(2, 2)self.flatten = nn.Flatten()self.linear1 = nn.Linear(1024, 64)self.linear2 = nn.Linear(64, 10)def forward(self, x):x = self.conv1(x)x = self.pool1(x)x = self.conv2(x)x = self.pool2(x)x = self.conv3(x)x = self.pool3(x)x = self.flatten(x)x = self.linear1(x)x = self.linear2(x)return xCIFAR10_NET_Instance = CIFAR10_NET()
print(CIFAR10_NET_Instance)

Sequential() 函数的 demo

import torch
from torch import nn
from torch.utils.tensorboard import SummaryWriterclass CIFAR10_NET(nn.Module):def __init__(self):super(CIFAR10_NET, self).__init__()self.model = nn.Sequential(nn.Conv2d(3, 32, 5, padding=2),  # 输入输出尺寸相同,故根据卷积层的公式计算出padding的值,此时默认stride=1nn.MaxPool2d(2, 2),nn.Conv2d(32, 32, 5, padding=2),nn.MaxPool2d(2, 2),nn.Conv2d(32, 64, 5, padding=2),nn.MaxPool2d(2, 2),nn.Flatten(),nn.Linear(1024, 64),nn.Linear(64, 10))def forward(self, x):x = self.model(x)return xCIFAR10_NET_Instance = CIFAR10_NET()
print(CIFAR10_NET_Instance)writer = SummaryWriter('logs')
writer.add_graph(CIFAR10_NET_Instance, (torch.rand(1, 3, 32, 32), )) # 在tensorboard中将计算图可视化
writer.close()

在命令行使用 tensorboard 的效果图:

在这里插入图片描述

双击网络模型名:

在这里插入图片描述

继续双击会出现更多的细节内容!!

2)注意点:

  • 如果想要输入和输出的尺寸相同的话,需要按照卷积层中的公式来计算 paddingstride 的值,具体情参考笔记(十)。

  • 一般先搭建网络,在导入数据集之前,往往先用以下代码进行测试:

    # 先创建网络模型实例,假设为 test_net
    input = torch.ones((64,in_channels,H_in,W_in)) # in_channels、H_in、W_in根据数据集的输入设置
    output = test_net(input)
    print(output.shape)
    

    如果网络模型有错误,就会报错。


上一篇下一篇
神经网络入门实战(十三)待发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/33748.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

linux 系列服务器 高并发下ulimit优化文档

系统输入 ulimit -a 结果如下 解除 Linux 系统的最大进程数 要解除或提高 Linux 系统的最大进程数,可以修改 ulimit 设置和 /etc/security/limits.conf 文件中的限制。 临时修改 ulimit 设置 可以使用 ulimit 命令来查看和修改当前会话的最大进程数: 查…

Elasticsearch数据迁移(快照)

1. 数据条件 一台原始es服务器(192.168.xx.xx),数据迁移后的目标服务器(10.2.xx.xx)。 2台服务器所处环境: centos7操作系统, elasticsearch-7.3.0。 2. 为原始es服务器数据创建快照 修改elas…

基于 SpringBoot 构建校园失物招领智能平台:优化校园失物处理流程

4系统设计 4.1系统概要设计 本文通过B/S结构(Browser/Server,浏览器/服务器结构)开发的该校园失物招领系统,B/S结构的优点很多,例如:开发容易、强的共享性、便于维护等,只要有网络,用户可以随时随地进行使用。 系统工作…

图解SSL/TLS 建立加密通道的过程

众所周知,HTTPS 是 HTTP 安全版,HTTP 的数据以明文形式传输,而 HTTPS 使用 SSL/TLS 协议对数据进行加密,确保数据在传输过程中的安全。 那么,HTTPS 是如何做到数据加密的呢?这就需要了解 SSL/TLS 协议了。 …

HTTP协议图--HTTP 工作过程

HTTP请求响应模型 HTTP通信机制是在一次完整的 HTTP 通信过程中,客户端与服务器之间将完成下列7个步骤: 建立 TCP 连接 在HTTP工作开始之前,客户端首先要通过网络与服务器建立连接,该连接是通过 TCP 来完成的,该协议…

BurpSuite工具-Proxy代理用法(抓包、改包、放包)

一、Burp Suite 项目管理 二、Proxy(代理抓包模块) 1. 简要说明 1.1. Intercept(拦截) 1.2. HTTP History(HTTP 历史) 1.3. WebSockets History(WebSocket 历史) 1.4. Options…

前端测试框架 jasmine 的使用

最近的项目在使用AngulaJs,对JS代码的测试问题就摆在了面前。通过对比我们选择了 Karma jasmine ,使用 Jasmine做单元测试 ,Karma 自动化完成,当然了如果使用 Karma jasmine 前提是必须安装 Nodejs。 安装好 Nodejs ,使用 npm 安装好必要…

Blender均匀放缩模型

解决办法: 首先选中模型,按下“s”键,如下图所示,此时模型根据鼠标的移动放缩 或者在按下“s”后输入数值,再按回车键Enter,模型会根据你该数值进行均匀放缩 指定放大2倍结果——

TCP/IP 协议图--计算机网络体系结构分层

计算机网络体系结构分层 计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”

hive 行转列

行转列的常规做法是,group bysum(if())【或count(if())】 建表: CREATE TABLE table2 (year INT,month INT,amount DOUBLE );INSERT INTO table2 (year, month, amount) VALUES(1991, 2, 1.2),(1991, 3, 1.3),(1991, 4, 1.4),(1992, 1, 2.1),(1992, 2, 2.2),(1992…

5G Multicast/Broadcast Services(MBS)相关的Other SI都有哪些?

系统消息分为Minimum SI 和other SI,其中Minimum SI 包括MIB和SIB1,Minimum SI包含初始访问所需的基本信息和获取任何其他 SI 的信息。 而随着3GPP引入的技术越来越多,例如sidelink,NTN,MBS broadcast/multicast以及A…

6. 一分钟读懂“抽象工厂模式”

6.1 模式介绍 书接上文,工厂方法模式只能搞定单一产品族,遇到需要生产多个产品族时就歇菜了。于是,在需求的“花式鞭策”下,程序员们再次绷紧脑细胞,创造出了更强大的抽象工厂模式,让工厂一次性打包多个产品…

Ignis如何将Tokenization解决方案应用于RWA和实体经济

随着区块链技术的发展,代币化(Tokenization)逐渐成为连接数字经济与实体经济的重要桥梁。尤其是RWA(真实世界资产)的概念,近年来成为金融行业的热议话题。Ignis作为Jelurida公司推出的公链平台,…

sql删除冗余数据

工作或面试中经常能遇见一种场景题:删除冗余的数据,以下是举例介绍相应的解决办法。 举例: 表结构: 解法1:子查询 获取相同数据中id更小的数据项,再将id不属于其中的数据删除。-- 注意:mysql中…

mac 安装python3和配置环境变量

mac 安装python3和配置环境变量 前言怎样选择python3的版本python3的安装1、去官网下载安装包2、下载完成后直接解压,检查安装是否成功 前言 在学习python的第一步就是安装它和配置他的环境变量,那么选择哪个版本的python你可曾知道,下面就讲解怎样选择…

Springboot美食分享平台

私信我获取源码和万字论文,制作不易,感谢点赞支持。 Springboot美食分享平台 一、 绪论 1.1 研究意义 当今社会作为一个飞速的发展社会,网络已经完全渗入人们的生活, 网络信息已成为传播的第一大媒介, 可以毫不夸张…

iview upload clearFiles清除回显视图

iview upload 上传完文件之后清除内容&#xff0c;打开会回显视图&#xff0c;清除不掉 关闭弹框时主动清除回显内容即可this.$refs.uploads.clearFiles() <FormItem label"上传附件:" :label-width"formNameWidth"><Upload action"/fms/ap…

并查集的原理及实现

目录 0.引例 1.并查集的原理 2.并查集的存储结构 3.并查集的实现 并查集接口总览 构造函数 查找元素属于哪个集合 判断是否属于同一个集合 合并两个集合 集合的个数 4.并查集完整代码附录 5.并查集在OJ中的应用 省份数量 等式方程的可满足性 0.引例 在我们刚上…

机器学习--绪论

开启这一系列文章的初衷&#xff0c;是希望搭建一座通向机器学习世界的桥梁&#xff0c;为有志于探索这一领域的读者提供系统性指引和实践经验分享。随着人工智能和大数据技术的迅猛发展&#xff0c;机器学习已成为推动技术创新和社会变革的重要驱动力。从智能推荐系统到自然语…

Redis使用场景-缓存-缓存雪崩

前言 之前在针对实习面试的博文中讲到Redis在实际开发中的生产问题&#xff0c;其中缓存穿透、击穿、雪崩在面试中问的最频繁&#xff0c;本文加了图解&#xff0c;希望帮助你更直观的了解缓存雪崩&#x1f600; &#xff08;放出之前写的针对实习面试的关于Redis生产问题的博…