池化层pooling与采样
upsample与downsample
upsample(interpolating)是上采样,是图片的放大
unpool是上采样的一种
downsample(subsample)是下采样,是图片的缩小
在卷积神经网络中使用的采样方式就是pooling,有点类似下采样,但不太一样
pooling也是把feature map变小的操作
pooling有多种方式,如max pooling, avg pooling
Max pooling是取窗口中最大的值
这里的stride是2,如果是1的话生成的矩阵应该是3*3的了
Avg pooling 就是取窗口中数字的平均值
在最原始的LeNet5用的还不是pooling,用的是subsampling,就是downsampling,就是隔行采样
从AlexNet开始引入了pooling操作
Pytorch的pooling操作
最大池化 maxpooling
torch.nn.MaxPool2d(kernel_size, stride=None, padding=0, dilation=1, return_indices=False, ceil_mode=False)
平均池化 avgpooling
torch.nn.AvgPool2d(kernel_size, stride=None, padding=0, ceil_mode=False, count_include_pad=True, divisor_override=None)
pooling操作也有nn.和F. 两个版本
Upsample操作
upsample是
①通过插值,即interpolate
②还有unpool方法
③还有转置卷积
scale_factor是放大几倍
mode有多种