最大池化的作用:池化层的最直观的作用就是降维、减少参数量、去除冗余信息、对特征进行压缩、简化网络复杂度、减少计算量、减少内存消耗等等
import torch
from numpy import float32
from torch import nn
from torch.nn import MaxPool2d
input = torch.tensor([[1,2,0,3,1],
[0,1,2,3,1],
[1,2,1,0,0],
[5,2,3,1,1],
[2,1,0,1,1]],dtype=torch.float32)
input = torch.reshape(input,(-1,1,5,5))
class Tudui(nn.Module):
def __init__(self):
super(Tudui, self).__init__()
self.maxpool1 = MaxPool2d(kernel_size=3,ceil_mode=True)
def forward(self, input):
output = self.maxpool1(input)
return output
class Tudui2(nn.Module):
def __init__(self):
super(Tudui2, self).__init__()
self.maxpool1 = MaxPool2d(kernel_size=3, ceil_mode=False)
def forward(self, input):
output = self.maxpool1(input)
return output
tudui = Tudui()
tudui2 = Tudui2()
output = tudui(input)
output2 = tudui2(input)
print(output)
print(output2)
输出如下:发现true的时候会保留,false的时候如果数量不够就不出现。
tensor([[[[2., 3.],
[5., 1.]]]])
tensor([[[[2.]]]])