class_docstr: SE Block Proposed in https://arxiv.org/pdf/1709.01507.pdf
class_docstr_tok: ["SE","Block","Proposed","in","https",":","\/\/arxiv.org\/pdf\/1709.01507.pdf"]
code: def __init__(self, num_channels: int, reduction: int = 1):
      super().__init__()
      self.pool = nn.AdaptiveAvgPool2D(1)
      self.conv = nn.Sequential(
          nn.Conv2D(
              num_channels,
              int(num_channels // reduction),
              1,
              bias_attr=False,
          ),
          nn.ReLU(),
          nn.Conv2D(
              int(num_channels // reduction),
              num_channels,
              1,
              bias_attr=False,
          ),
          nn.Sigmoid(),
      )
  
imports: import os
  import time
  import argparse
  from typing import Callable, Union, List, Tuple
  import numpy
  import cv2
  import scipy
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddlehub.module.module import moduleinfo
  import paddlehub.vision.segmentation_transforms
  from paddlehub.module.module import moduleinfo, runnable, serving
  from modnet_mobilenetv2_matting.mobilenetv2 import MobileNetV2
  import modnet_mobilenetv2_matting.processor
label_desc: Use image node_id 1 to create a new SEBlock object from inherited base classes: nn with example: obj = SEBlock(num_channels, reduction)