自适应最大池化2D
- classtorch.nn.AdaptiveMaxPool2d(output_size, return_indices=False)[源代码]
-
对由多个输入平面组成的输入信号进行二维自适应最大池化。
输出的大小是$H_{out} \times W_{out}$,与输入大小无关。输出特征的数量与输入平面的数量相同。
- 参数
-
-
output_size (Union[int, None, Tuple[Optional[int], Optional[int]]]) – 图像的目标输出大小,形式为$H_{out} \times W_{out}$。可以是一个元组$(H_{out}, W_{out})$或一个单独的值$H_{out}$用于正方形图像$H_{out} \times H_{out}$。$H_{out}$和$W_{out}$可以是
int
,也可以是None
,表示大小与输入相同。 -
return_indices (bool) – 如果为
True
,将返回索引和输出。传递给 nn.MaxUnpool2d 时有用。默认值:False
-
- 形状:
-
-
输入: $(N, C, H_{in}, W_{in})$ 或 $(C, H_{in}, W_{in})$。
-
输出: $(N, C, H_{out}, W_{out})$ 或 $(C, H_{out}, W_{out})$,其中 $(H_{out}, W_{out})=\text{output\_size}$。
-
示例
>>> # target output size of 5x7 >>> m = nn.AdaptiveMaxPool2d((5, 7)) >>> input = torch.randn(1, 64, 8, 9) >>> output = m(input) >>> # target output size of 7x7 (square) >>> m = nn.AdaptiveMaxPool2d(7) >>> input = torch.randn(1, 64, 10, 9) >>> output = m(input) >>> # target output size of 10x7 >>> m = nn.AdaptiveMaxPool2d((None, 7)) >>> input = torch.randn(1, 64, 10, 9) >>> output = m(input)