class_docstr: Pyramid pooling module originally in PSPNet.
  
  Args:
      in_channels (int): The number of intput channels to pyramid pooling module.
      out_channels (int): The number of output channels after pyramid pooling module.
      bin_sizes (tuple, optional): The out size of pooled feature maps. Default: (1, 2, 3, 6).
      dim_reduction (bool, optional): A bool value represents if reducing dimension after pooling. Default: True.
      align_corners (bool): An argument of F.interpolate. It should be set to False when the output size of feature
          is even, e.g. 1024x512, otherwise it is True, e.g. 769x769.
docstr: Create one pooling layer.
  
  In our implementation, we adopt the same dimension reduction as the original paper that might be
  slightly different with other implementations.
  
  After pooling, the channels are reduced to 1/len(bin_sizes) immediately, while some other implementations
  keep the channels to be same.
  
  Args:
      in_channels (int): The number of intput channels to pyramid pooling module.
      out_channels (int): The number of output channels to pyramid pooling module.
      size (int): The out size of the pooled layer.
  
  Returns:
      conv (Tensor): A tensor after Pyramid Pooling Module.
code: def _make_stage(self, in_channels: int, out_channels: int, size: int):
      """
      Create one pooling layer.
  
      In our implementation, we adopt the same dimension reduction as the original paper that might be
      slightly different with other implementations.
  
      After pooling, the channels are reduced to 1/len(bin_sizes) immediately, while some other implementations
      keep the channels to be same.
  
      Args:
          in_channels (int): The number of intput channels to pyramid pooling module.
          out_channels (int): The number of output channels to pyramid pooling module.
          size (int): The out size of the pooled layer.
  
      Returns:
          conv (Tensor): A tensor after Pyramid Pooling Module.
      """
  
      prior = nn.AdaptiveAvgPool2D(output_size=(size, size))
      conv = ConvBNReLU(
          in_channels=in_channels,
          out_channels=out_channels,
          kernel_size=1,
      )
  
      return nn.Sequential(prior, conv)
  
imports: import os
  from typing import Tuple
  import paddle
  import paddle.nn
  import paddle.nn.functional
label_desc: Use image node_id 2 for calling the PPModule obj's underlying member method code with example usage: obj._make_stage(in_channels, out_channels, size) and returns: nn