pytorch中池化层MaxPool2d函数

对于输入信号的输入通道,提供2维最大池化(max pooling)操作

class torch.nn.MaxPool2d(kernel_size, stride=None, padding=0, dilation=1, return_indices=False, ceil_mode=False)

参数kernel_size,stride, padding,dilation数据类型: 可以是一个int类型的数据,此时卷积height和width值相同; 也可以是一个tuple数组(包含来两个int类型的数据),第一个int数据表示height的数值,tuple的第二个int类型的数据表示width的数值

参数:

  • kernel_size(int or tuple) - max pooling的窗口大小
  • stride(int or tuple, optional) - max pooling的窗口移动的步长。默认值是kernel_size
  • padding(int or tuple, optional) - 输入的每一条边补充0的层数
  • dilation(int or tuple, optional) – 一个控制窗口中元素步幅的参数
  • return_indices - 如果等于True,会返回输出最大值的序号,对于上采样操作会有帮助
  • ceil_mode - 如果等于True,计算输出信号大小的时候,会使用向上取整,代替默认的向下取整的操作
m = torch.nn.MaxPool2d(3, stride=2)
input = autograd.Variable(torch.randn(20, 16, 50))
print(input.shape)
output = m(input)
output.shape

torch.Size([20, 16, 50])
torch.Size([20, 7, 24])

m = torch.nn.MaxPool2d((2,4), stride=2)
input = autograd.Variable(torch.randn(20, 16, 50))
print(input.shape)
output = m(input)
output.shape


torch.Size([20, 16, 50])
torch.Size([20, 8, 24])

你可能感兴趣的:(pytorch)