课程笔记:卷积Convolution和转置卷积ConvTranspose

卷积Convolution
分为3种:(一般情况下,卷积核在几个维度上滑动,就是几维卷积)
1)一维卷积
2)二维卷积
3)三维卷积
在这里插入图片描述
一维卷积:卷积核只在一个方向上滑动
二维卷积:卷积核在横轴和纵轴两个方向上滑动
三维卷积:卷积核在x,y和z轴方向上滑动

卷积运算是线性运算:卷积核在图片上滑动,在相应位置上进行乘加运算

卷积核是某种模板,某种特征提取器,activation map 是模板在原始图像上的体现。

卷积过程是模板匹配的过程,类似于用一个模板与图像上的小区域进行匹配(即相似性计算),与卷积核越相似,激活值越高,从而实现特征提取。

nn.Conv2d:
在这里插入图片描述

#输入通道数3,输出通道数(卷积核个数)1,卷积核尺寸3*3
conv_layer = nn.Conv2d(3, 1, 3)

dilation(空洞卷积):主要用于图像分割任务,提升感受野输出图像的一个像素能看到原始图像更大的区域。
在这里插入图片描述
groups(分组卷积设置):主要用于模型的轻量化
如:AlexNet,由于硬件的限制,采用两个GPU进行训练(采用了分组卷积)
在这里插入图片描述
尺寸计算:
在这里插入图片描述
转置卷积(Transpose Convolution):
主要用于对图像进行上采样,在图像分割任务中经常采用

计算机中如何计算卷积:
在这里插入图片描述
正常卷积:首先把图像44展成161,卷积核通过补零转化成16个值(匹配图像的长度),然后每一行的变化是根据步长循环移位的(行数是等于响应的像素个数),从而得出卷积核为416,输出则为41,再reshape为2*2

转置卷积:首先把图像22展成41,卷积核通过剔除的方法从9个权值中只留下4个值(匹配图像的长度),然后每一行的变化是根据步长循环移位的(行数是等于响应的像素个数),从而得出卷积核为164,输出则为161,再reshape为4*4

由此,形状上正常卷积的卷积核与转置卷积的卷积核是转置的关系,但权值完全不同,正常卷积与转置卷积不可逆

nn.ConvTranspose2d:
在这里插入图片描述
在这里插入图片描述

#输入通道数3,输出通道数(卷积核个数)1,卷积核尺寸3*3,步长2
conv_layer = nn.ConvTranspose2d(3, 1, 3, stride=2)

转置卷积最重要的设置它的步长

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值