【学习笔记】【Pytorch】十一、搭建CIFAR-10 model结构和Sequential的使用

文章介绍了如何使用PyTorch构建CIFAR-10数据集的模型结构,包括多个3x5x5的卷积层与最大池化层,利用Sequential模块简化代码,以及设置合适的padding和stride以保持输出尺寸。最后展示了模型的前向传播过程和TensorBoard的可视化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【学习笔记】【Pytorch】十一、搭建CIFAR-10 model结构和Sequential的使用

学习地址

PyTorch深度学习快速入门教程【小土堆】.

主要内容

一、CIFAR-10 model结构介绍

在这里插入图片描述

  1. input : 3@32x32,3通道32x32的图片 --> 特征图(Feature maps) : 32@32x32
    即经过32个3@5x5的卷积层,输出尺寸没有变化(有x个特征图即有x个卷积核。卷积核的通道数与输入的通道数相等,即3@5x5)。
    两种方法推导出padding = 2、stride = 1的值:
    • 公式法:
      在这里插入图片描述
      在这里插入图片描述
      • 理论法:为保持输出尺寸不变,padding都是卷积核大小的一半,应该padding=kernel_size/2;奇数卷积核把中心格子对准图片第一个格子,卷积核在格子外有两层就padding=2。
  2. input : 32@32x32 --> output : 32@16x16
    即经过2x2的最大池化层,stride = 2(池化层的步长为池化核的尺寸),padding = 0,特征图尺寸减小一半。
    3.input : 32@16x16 --> output : 32@16x16
    即即经过32个3@5x5的卷积层,输出尺寸没有变化。padding = 2、stride = 1。
    4.input : 32@16x16 --> output : 32@8x8
    即经过2x2的最大池化层,stride = 2,padding = 0,通道数不变,特征图尺寸减小一半。
    5.input : 32@8x8 --> output : 64@8x8
    即即经过64个3@5x5的卷积层,输出尺寸没有变化。padding = 2、stride = 1。
    6.input : 64@8x8 --> output : 64@4x4
    即经过2x2的最大池化层,stride = 2,padding = 0,通道数不变,特征图尺寸减小一半。

二、代码实现

import torch
from torch import nn
from torch.nn import Conv2d, MaxPool2d, Flatten, Linear, Sequential
from torch
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值