三维巻积的理解:

在学习卷积神经网时候,本人对代码中的卷积维度变化不是很理解,记录学习过程供参考。

另外,巻积核的参数 输入通道数,即输入数据的通道数,输出通道数也就是巻积核个数,尺寸一般奇数 1x1 3x3 一般有pad输出前后大小不变。

假设有一个卷积核W(3X3X3X2),第一个维度为高度,第二个维度为宽度,第三个维度为通道数,第四个维度为卷积层数。上图展示一下:
在这里插入图片描述

关于卷积过程中维度的变化:

三维的巻积核对图像操作,得到的还是二维平面,如果处理的图是三维的

对于单通道的灰度图卷积很好理解,如4X4的图片用3X3的一个卷积核进行卷积(步长为一),那结果就是2X2的维度;假设卷积核有2层,即为3X3X2,那么卷积出来的结果就是2X2X2。结果的维度就相当于拿卷积核这个“面”在图像里平移,看有多少个这样的“面”。

对于多通道而言,借用上面思维来理解就清晰了,如6X6X3的RGB图片,用3X3X3的卷积核来卷积(同样步长为一),就相当于拿一个3X3X3的正方体(卷积核)在6X6X3的长方体里平移(原图像),得出的结果就是二维的4X4,因为卷积核只需要在图片的第一和第二维平移,第三维度相等无需移动。此时如果卷积核层数为2,即3X3X3X2,那么结果就相当于有两层4X4的结果,即4X4X2。以此类推。
借用网上的图帮助理解:
在这里插入图片描述

BatchNorm:

随机选取了Batch进行Normalization, 为了防止过拟合而使用。3d操作就算将4维数据组成的5维操作,但是数据的维度是不变化的,因为没有像巻积操作嘛

dilated convolution

空洞巻积,即膨胀巻积,它的感受野可以设置的比普通巻积大,代码实例如下,即dilation的不同,如果设置为1就是普通巻积

torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode='zeros', device=None, dtype=None)

attention:

计算出了attention map然后再和这个特征相乘,就是经过attention处理的特征

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值