- 池化层返回窗口中最大或者平均值
- 缓解卷积层对位置的敏感性
- 同样有窗口大小、填充、步幅作为超参数
最大池化:每次输出窗口内最大值(不是求和了)

复现
导包
1 2
| import torch from torch import nn
|
构建
start=0, end=16, step=1,返回一维张量,其值介于区间 [start, end],步长为 step
1 2 3 4 5 6 7
| X = torch.arange(16, dtype=torch.float32).reshape((1,1,4,4)) X
|
3 表示是 3*3 的窗口,pytorch 种步幅和窗口大小相同,即每个窗口之间没有重叠
1 2 3 4
| pool2d = nn.MaxPool2d(3) pool2d(X)
|
自定义填充和步长
padding=1 表示四周都填上一行(一列), stride=2 表示步幅为 2
1 2 3 4 5
| pool2d = nn.MaxPool2d(3, padding=1, stride=2) pool2d(X)
|
自定义窗口大小和步长
1 2 3 4 5 6
| pool2d = nn.MaxPool2d((2,3),padding=(1,1),stride=(2,3)) pool2d(X)
|
多维度池化
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| X = torch.arange(16, dtype=torch.float32).reshape((1,1,4,4)) X = torch.cat((X,X+1),1) X
|
1 2 3 4 5 6 7 8
| pool2d = nn.MaxPool2d(3,padding=1,stride=2) pool2d(X)
|
相关链接
bilibili