評價此頁

AdaptiveMaxPool2d#

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

對由多個輸入平面組成的輸入訊號應用 2D 自適應最大池化。

對於任意輸入尺寸,輸出的尺寸為 Hout×WoutH_{out} \times W_{out}. 輸出特徵的數量等於輸入平面的數量。

引數
  • output_size (Union[int, None, tuple[Optional[int], Optional[int]]]) – 目標輸出影像尺寸,形式為 Hout×WoutH_{out} \times W_{out}. 可以是元組 (Hout,Wout)(H_{out}, W_{out}),或用於正方形影像的單個 HoutH_{out} Hout×HoutH_{out} \times H_{out}. HoutH_{out}WoutW_{out} 可以是 int 型別,或者 None,表示尺寸與輸入尺寸相同。

  • return_indices (bool) – 如果為 True,則會同時返回輸出和索引。這對於傳遞給 nn.MaxUnpool2d 很有用。預設為 False

形狀
  • 輸入:(N,C,Hin,Win)(N, C, H_{in}, W_{in})(C,Hin,Win)(C, H_{in}, W_{in})

  • 輸出:(N,C,Hout,Wout)(N, C, H_{out}, W_{out})(C,Hout,Wout)(C, H_{out}, W_{out}),其中 (Hout,Wout)=output_size(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)
forward(input)[source]#

執行前向傳播。