nn.Conv2d()
常用的参数有in_channels,out_channels,kernel_size,stride,padding;
除此之外还有参数dilation,groups,bias
in_channels对应的是输入数据体的深度;
out_channels表示输出数据体的深度;
kernel_size表示滤波器(卷积核)的大小,可以使用一 个数字来表示高和宽相同的卷积核,比如 kernel_size=3,也可以使用 不同的数字来表示高和宽不同的卷积核,比如 kernel_size=(3, 2);
stride表示滑动的步长;
padding=0表示四周不进行零填充,而 padding=1表示四周进行1个像素点的零填充;
bias是一个布尔值,默 认 bias=True,表示使用偏置;
groups表示输出数据体深度上和输入数 据体深度上的联系,默认 groups=1,也就是所有的输出和输入都是相 关联的,如果 groups=2,这表示输入的深度被分割成两份,输出的深 度也被分割成两份,它们之间分别对应起来,所以要求输出和输入都 必须要能被 groups整除;
dilation表示卷积对于输入数据体的空间间 隔,默认 dilation=1
nn.MaxPool2d()
参数有 kernel_size、stride、padding、dilation、return_indices、ceil_mode·
return_indices表示是否返回最大值所处的下标,默认return_indices=False; ·
ceil_mode表示使用一些方格代替层结构,默认ceil_mode=False,一般都不会设置这些参数。
·
nn.AvgPool2d()表示均值池化,里面的参数和nn.MaxPool2d()类似,但多一个参数 count_incl ude_pad,这个参数 表示计算均值的时候是否包含零填充,默认 count_include_pad=True
PyTorch还提供了一些别的池化层,如
nn.LPPool2d()、
nn.AdaptiveMaxPool2d()