评价此页

AdaptiveMaxPool3d#

class torch.nn.AdaptiveMaxPool3d(output_size, return_indices=False)[源码]#

对由多个输入平面组成的输入信号应用 3D 自适应最大池化。

对于任何输入尺寸,输出尺寸为 Dout×Hout×WoutD_{out} \times H_{out} \times W_{out}. 输出的通道数与输入的通道数相同。

参数
  • output_size (Union[int, None, tuple[Optional[int], Optional[int], Optional[int]]) – 目标图像输出尺寸,形式为 Dout×Hout×WoutD_{out} \times H_{out} \times W_{out}. 可以是元组 (Dout,Hout,Wout)(D_{out}, H_{out}, W_{out}) 或单个 DoutD_{out} 表示一个立方体 Dout×Dout×DoutD_{out} \times D_{out} \times D_{out}. DoutD_{out}, HoutH_{out} and WoutW_{out} can be either an 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.MaxUnpool3d. Default: False

形状
  • Input: (N,C,Din,Hin,Win)(N, C, D_{in}, H_{in}, W_{in}) or (C,Din,Hin,Win)(C, D_{in}, H_{in}, W_{in}).

  • Output: (N,C,Dout,Hout,Wout)(N, C, D_{out}, H_{out}, W_{out}) or (C,Dout,Hout,Wout)(C, D_{out}, H_{out}, W_{out}), where (Dout,Hout,Wout)=output_size(D_{out}, H_{out}, W_{out})=\text{output\_size}.

示例

>>> # target output size of 5x7x9
>>> m = nn.AdaptiveMaxPool3d((5, 7, 9))
>>> input = torch.randn(1, 64, 8, 9, 10)
>>> output = m(input)
>>> # target output size of 7x7x7 (cube)
>>> m = nn.AdaptiveMaxPool3d(7)
>>> input = torch.randn(1, 64, 10, 9, 8)
>>> output = m(input)
>>> # target output size of 7x9x8
>>> m = nn.AdaptiveMaxPool3d((7, None, None))
>>> input = torch.randn(1, 64, 10, 9, 8)
>>> output = m(input)
forward(input)[源码]#

执行前向传播。