nn.Conv2d()作为最常用的卷积操作,有必要对其参数有一定了解。
nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True)
in_channels:输入通道
out_channels:输出通道
kerner_size-:卷积核的尺寸大小
stride:卷积步长,默认是1
padding:填充,对输入的每一条边进行补0操作,默认是0
dilation:膨胀大小,即卷积核元素之间的间距,默认是1
groups:分组设置,默认是1
bias:是否将一个学习到的bias增加输出中,默认是 True
疑惑点:
bias参数如何设置?什么时候加?什么时候不加?
解惑:
一般 nn.Conv2d()
和 nn.BatchNorm2d()
是一起使用的,习惯上先卷积,再接BN
,此时,bias一般设置成False
(原因:因为有BN的存在,就没必要再添加bias,添加了也没什么效果,还会占显卡内存,BN干的工作已经替代了bias)
总结:
如果打算卷积操作后加BN层
,那么bias设置为False;
反之没有BN层
,bias设置为True;
文章出处登录后可见!
已经登录?立即刷新