【学习笔记】卷积操作

1、打开pytorch官网:PyTorch icon-default.png?t=N7T8https://pytorch.org/

在左侧API工具中选择torch.nn.functional -> Convolution  functions -> nn.Conv2d (二维卷积层)

如下图所示:

torch.nn.functional.conv2d(inputweightbias=Nonestride=1padding=0dilation=1groups=1) → Tensor

参数介绍: 

input:  输入

weight: 权重,更专业点叫卷积核

bias: 偏执

stride: 步幅

padding: 填充

下面举例说明上面参数的作用 :

1.当stride=1,padding=0时

import torch
import torch.nn.functional as F

#输入为二维矩阵[[],[],[],[]]是个平面,channel=1 ,batch_size=1
input=torch.tensor([[1,2,0,3,1],
                    [0,1,2,3,1],
                    [1,2,1,0,0],
                    [5,2,3,1,1],
                    [2,1,0,1,1]])
#卷积和
kernel=torch.tensor([[1,2,1],
                     [0,1,0],
                     [2,1,0]])
"""
由于上面输出只有高和宽(torch.Size([3, 3])),不满足conv2D中input参数要求,因此可以使用pytorch提供的尺寸变换(reshape)
"""
input=torch.reshape(input,(1,1,5,5))
kernel=torch.reshape(kernel,(1,1,3,3))
print(input.shape)  #torch.Size([1, 1, 5, 5])
print(kernel.shape) #torch.Size([1, 1, 3, 3])

output= F.conv2d(input,kernel,stride=1)  #stride表示步幅为1,横向和纵向都为1
print(output)

2. 当padding=1时,对输入图像进行填充时

 

 

 

 

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值