深度学习实践—-卷积学习(持续学习…)

1.卷积核的尺寸,数量,大小

输入X的格式:[样本数,输入图像通道,图像高,图像宽]

输入 X:[B, In_channel, H_in, W_in]
权重W:[In_channel, Out_channel, kernel_H, kernel_W]
输出 y :[B, Out_channel,H_out, W_out]

如下所示:
深度学习实践----卷积学习(持续学习...)
其中Input:Batch=1,In_channel=3,H=8,W=8
Kernels:…In_channel=3,Out_channel=5,Kernel_size=3X3
Feature Maps: Batch=1,Out_channel=5,H=6,W=6
所以:
卷积核的输入通道数(In_channe)由输入矩阵的通道数所决定。
输出矩阵的通道数(Out_channe)由卷积核输出通道数所决定。
卷积核心数:输入通道数x输出通道数(几组卷积核)x卷积核大小
故上图参数量为:3X5X3X3
输出特征图的计算方法:
深度学习实践----卷积学习(持续学习...)
CSDN-jk英菲尼迪:卷积核的相关整理

2.组卷积

pytorch的conv2d函数中groups参数理解:

Conv2d(in_channel, out_channel, kernel_size, stride, pad,groups=1)
这其中group的参数会影响卷积的计算量

例如:
输入X=[B=1, C=6, H=1, W=1],conv = Conv2d(6, 4, 1,1,0, groups=1)
那就需要4个1x1x6的卷积核,每个卷积核对输入X进行卷积,得到的输出的通道数为1的数据,其具体过程就是一个1x1x6的卷积核在输入X[1, 6, 1, 1]的每个通道上做卷积,然后把每个通道上的值进行叠加,就变成了单通道,于是4个卷积核就需要(1x1x6)x4个参数
输入X=[B=1, C=6, H=1, W=1],conv = Conv2d(6, 4, 1,1,0, groups=2),即将输入分为两组,每组输入x=[B,3,1,1],对应的卷积核大小为1x1x3,有4/groups=2个,即每组输入得到的输出为[B,2,1,1],然后将两组输出叠加起来,得到最终输出[B,4,1,1],于是参数量为:(1x1x3)x2x2个参数。
接下来有图片:
深度学习实践----卷积学习(持续学习...)

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2022年3月18日
下一篇 2022年3月18日

相关推荐