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

AdaptiveAvgPool3d

class torch.nn.AdaptiveAvgPool3d(output_size) [source]

Applies a 3D adaptive average pooling over an input signal composed of several input planes.

The output is of size D x H x W, 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], Optional[int]]]) – the target output size of the form D x H x W. Can be a tuple (D, H, W) or a single number D for a cube D x D x D. D, H and W can be either a int, or None which means the size will be the same as that of the input.

Shape:
  • Input: ( N , C , D i n , H i n , W i n ) (N, C, D_{in}, H_{in}, W_{in}) or ( C , D i n , H i n , W i n ) (C, D_{in}, H_{in}, W_{in}) .
  • Output: ( N , C , S 0 , S 1 , S 2 ) (N, C, S_{0}, S_{1}, S_{2}) or ( C , S 0 , S 1 , S 2 ) (C, S_{0}, S_{1}, S_{2}) , where S = output_size S=\text{output\_size} .

Examples

>>> # target output size of 5x7x9
>>> m = nn.AdaptiveAvgPool3d((5, 7, 9))
>>> input = torch.randn(1, 64, 8, 9, 10)
>>> output = m(input)
>>> # target output size of 7x7x7 (cube)
>>> m = nn.AdaptiveAvgPool3d(7)
>>> input = torch.randn(1, 64, 10, 9, 8)
>>> output = m(input)
>>> # target output size of 7x9x8
>>> m = nn.AdaptiveAvgPool3d((7, None, None))
>>> input = torch.randn(1, 64, 10, 9, 8)
>>> 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.AdaptiveAvgPool3d.html