pytorch / 2 / generated / torch.nn.adaptivemaxpool2d.html

AdaptiveMaxPool2d

class torch.nn.AdaptiveMaxPool2d(output_size, return_indices=False) [source]

Applies a 2D adaptive max pooling over an input signal composed of several input planes.

The output is of size H o u t × W o u t H_{out} \times W_{out} , for any input size. The number of output features is equal to the number of input planes.

Parameters
  • output_size (Union[int, None, Tuple[Optional[int], Optional[int]]]) – the target output size of the image of the form H o u t × W o u t H_{out} \times W_{out} . Can be a tuple ( H o u t , W o u t ) (H_{out}, W_{out}) or a single H o u t H_{out} for a square image H o u t × H o u t H_{out} \times H_{out} . H o u t H_{out} and W o u t W_{out} can be either a int, or None which means the size will be the same as that of the input.
  • return_indices (bool) – if True, will return the indices along with the outputs. Useful to pass to nn.MaxUnpool2d. Default: False
Shape:
  • Input: ( N , C , H i n , W i n ) (N, C, H_{in}, W_{in}) or ( C , H i n , W i n ) (C, H_{in}, W_{in}) .
  • Output: ( N , C , H o u t , W o u t ) (N, C, H_{out}, W_{out}) or ( C , H o u t , W o u t ) (C, H_{out}, W_{out}) , where ( H o u t , W o u t ) = output_size (H_{out}, W_{out})=\text{output\_size} .

Examples

>>> # 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)

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.nn.AdaptiveMaxPool2d.html