pytorch1.0中torch.nn.Conv2d用法详解

yipeiwu_com6年前Python基础

Conv2d的简单使用

torch 包 nn 中 Conv2d 的用法与 tensorflow 中类似,但不完全一样。

在 torch 中,Conv2d 有几个基本的参数,分别是

in_channels 输入图像的深度

out_channels 输出图像的深度

kernel_size 卷积核大小,正方形卷积只为单个数字

stride 卷积步长,默认为1

padding 卷积是否造成尺寸丢失,1为不丢失

与tensorflow不一样的是,pytorch中的使用更加清晰化,我们可以使用这种方法定义输入与输出图像的深度并同时指定使用的卷积核的大小。

而我们的输入则由经由 Conv2d 定义的参数传入,如下所示:

# 定义一个输入深度为1,输出为6,卷积核大小为 3*3 的 conv1 变量
self.conv1 = nn.Conv2d(1, 6, 3)
# 传入原始输入x,以获得长宽与x相当,深度为6的卷积部分
x = self.conv1(x)

要注意的是,Conv2d中所需要的输入顺序为

batchsize, nChannels, Height, Width

其他的简单使用

同样的,与 Conv2d 类似的函数还有很多,类似 max_pool2d、relu等等,他们的使用方法与 Conv2d 极为类似,如下所示:

# relu函数的使用
F.relu(self.conv1(x))
# 池化函数的使用
F.max_pool2d(F.relu(self.conv2(x)), 2)

以上这篇pytorch1.0中torch.nn.Conv2d用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pytorch中Tensor与各种图像格式的相互转化详解

前言 在pytorch中经常会遇到图像格式的转化,例如将PIL库读取出来的图片转化为Tensor,亦或者将Tensor转化为numpy格式的图片。而且使用不同图像处理库读取出来的图片格...

python实现汉诺塔递归算法经典案例

python实现汉诺塔递归算法经典案例

    学到递归的时候有个汉诺塔的练习,汉诺塔应该是学习计算机递归算法的经典入门案例了,所以本人觉得可以写篇博客来表达一下自己的见解。这markdown编辑...

Python基于回溯法子集树模板解决0-1背包问题实例

Python基于回溯法子集树模板解决0-1背包问题实例

本文实例讲述了Python基于回溯法子集树模板解决0-1背包问题。分享给大家供大家参考,具体如下: 问题 给定N个物品和一个背包。物品i的重量是Wi,其价值位Vi ,背包的容量为C。问应...

Django ORM 聚合查询和分组查询实现详解

Django ORM 聚合查询和分组查询实现详解

models.py: from django.db import models # 出版社 class Publisher(models.Model): id = models...

利用Python操作消息队列RabbitMQ的方法教程

前言 RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。 MQ全称为Message Queue, 消息队列(...