PyTorch学习—10.nn中网络层的具体使用
文章目录
- 引言
- 一、卷积层
- 1. nn.Conv2d
- 2.nn.ConvTranspose2d
- 二、池化层
- 1. nn.MaxPool2d
- 2. nn.AvgPool2d
- 3. nn.MaxUnpool2d
- 三、线性层
- 1. nn.Linear
- 四、激活函数层
- 1. nn.Sigmoid
- 2. nn.tanh
- 3. nn.ReLU
理论知识插眼:深度学习TF—7.卷积神经网络CNN
引言
前面,我们学习了如何搭建模型,以及在模型搭建过程中用到的容器。这一节,我们介绍网络层的具体使用。
一、卷积层
下面介绍几个概念:
- 卷积运算:卷积核在输入信号(图像)上滑动,相应位置上进行乘加。
- 卷积核:又称为滤波器,过滤器,可认为是某种模式,某种特征。
- 卷积维度:一般情况下,卷积核在几个维度上滑动,就是几维卷积。
PyTorch中提供了1d、2d、3d的卷积。
1d conv:
2d conv:
3d conv:
上述都是一个卷积核在一个信号上的卷积。如果涉及多个卷积核多个信号的操作,那么应该怎么判断卷积的维度?下面我们以一个三维卷积核实现二维卷积为例
每个卷积核分别在各自的通道进行卷积操作得到输出值,然后相加再加上偏置才会得到特征图的一个像素值。一个卷积核只在一个二维图像上进行滑动,所以这是二维卷积。为什么它是三维卷积核?正是因为它有多个通道,在多个通道上分别进行卷积。
1. nn.Conv2d
nn.Conv2d(in_channels,out_channels,kernel_size,stride=1,padding=0,dilation=1,groups=1,bias=True,padding_mode= ' zeros ' )
功能:对多个二维信号进行二维卷积
主要参数:
- in_channels:输入通道数
- out_channels:输出通道数,等价于卷积核个数
- kernel_size:卷积核尺寸
- stride:步长
- padding :填充个数,用于保持输入与输出图像的尺寸是匹配的
- dilation:空洞卷积大小
- groups:分组卷积设置
- bias:偏置
尺寸计算公式为:
2.nn.ConvTranspose2d
nn.ConvTranspose2d
是转置卷积。转置卷积用于对图像进行上采样(UpSample),经常用于图像分割任务。那么,什么是转置卷积?它与正常卷积有什么区别?
如图是正常2d卷积
假设图像尺寸为4∗44*44∗4,卷积核为3∗33*33∗3,padding=0,stride=1
图像:
PyTorch学习—10.nn中网络层的具体使用相关推荐
- 速成pytorch学习——4天中阶API示范
使用Pytorch的中阶API实现线性回归模型和和DNN二分类模型. Pytorch的中阶API主要包括各种模型层,损失函数,优化器,数据管道等等. 一,线性回归模型 1,准备数据 import nu ...
- 速成pytorch学习——10天.训练模型的3种方法
Pytorch通常需要用户编写自定义训练循环,训练循环的代码风格因人而异. 有3类典型的训练循环代码风格:脚本形式训练循环,函数形式训练循环,类形式训练循环. 下面以minist数据集的分类模型的训练 ...
- Scrapy框架的学习(10.Scrapy中的模拟登陆(使用cookie模拟登陆))
1. 为什么需要模拟登陆? 获取cookie,能够爬取登陆后的页面的数据 2.使用cookie模拟登陆的场景 (1) cookie过期时间很长,常见于一些不规范的网站 (2) 能在cookie过期之前 ...
- 【Pytorch学习笔记2】Pytorch的主要组成模块
个人笔记,仅用于个人学习与总结 感谢DataWhale开源组织提供的优秀的开源Pytorch学习文档:原文档链接 本文目录 1. Pytorch的主要组成模块 1.1 完成深度学习的必要部分 1.2 ...
- PyTorch学习笔记(11)——论nn.Conv2d中的反向传播实现过程
0. 前言 众所周知,反向传播(back propagation)算法 (Rumelhart et al., 1986c),经常简称为backprop,它允许来自代价函数的信息通过网络向后流动,以便计 ...
- Pytorch 学习(6):Pytorch中的torch.nn Convolution Layers 卷积层参数初始化
Pytorch 学习(6):Pytorch中的torch.nn Convolution Layers 卷积层参数初始化 class Conv1d(_ConvNd):......def __init ...
- Pytorch学习(二)—— nn模块
torch.nn nn.Module 常用的神经网络相关层 损失函数 优化器 模型初始化策略 nn和autograd nn.functional nn和autograd的关系 hooks简介 模型保存 ...
- 【Pytorch学习笔记三】Pytorch神经网络包nn和优化器optm(一个简单的卷积神经网络模型的搭建)
文章目录 一, 神经网络包nn 1.1定义一个网络 1.2 损失函数 二.优化器 nn构建于 Autograd之上,可用来定义和运行神经网络, PyTorch Autograd 让我们定义计算图和计算 ...
- PyTorch学习笔记2:nn.Module、优化器、模型的保存和加载、TensorBoard
文章目录 一.nn.Module 1.1 nn.Module的调用 1.2 线性回归的实现 二.损失函数 三.优化器 3.1.1 SGD优化器 3.1.2 Adagrad优化器 3.2 分层学习率 3 ...
- Pytorch:NLP 迁移学习、NLP中的标准数据集、NLP中的常用预训练模型、加载和使用预训练模型、huggingface的transfomers微调脚本文件
日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) run_glue.py微调脚本代码 python命令执行run ...
最新文章
- ad 卡尔曼_卡尔曼滤波剪影__Kalman Filtering · Make Intuitive
- MYSQL || 的BUG // MYSQL 不同库自增id的问题 //MySQL根据表注释查找对应的表 //hive -mysql 日期比较
- Java_Web使用简单的批处理操作
- C# ConcurrentBag实现
- python创建变量_Python每天一分钟:给类对象动态新增/删除成员变量和方法(函数)...
- Three-way Partition
- 广州大学专业选修课介绍-----------Linux操作系统分析及实践
- 7-81 编程团体赛 (20 分)
- linux man 后面的数字,man命令后面的数字
- CSS基础知识真难啊
- 2018第九届蓝桥杯国赛C组_java
- js下载视频(mp4格式)
- 如何取消github邮件订阅
- 网站安全性之js注入
- 计算机考研404是什么意思,研路分享:我的404分考研高分心得体会
- 开源了个人开发的一个微信小程序,提供共享场景服务,支持图片和小视频
- micropython移植stm32f746_STM32L476和STM32F746的外部Flash复制文件速度对比
- 华为matebook笔记本鸿蒙,聊聊鸿蒙对笔记本电脑行业的影响
- 远程连接服务器突然失败
- nginx+keepalive实现高可用负载均衡