class_docstr: 'Effective Squeeze-Excitation
  From `CenterMask : Real-Time Anchor-Free Instance Segmentation` - https://arxiv.org/abs/1911.06667
code: def __init__(
      self, channels, add_maxpool=False, gate_layer="hard_sigmoid", **_
  ):
      super(EffectiveSEModule, self).__init__()
      self.add_maxpool = add_maxpool
      self.fc = nn.Conv2d(channels, channels, kernel_size=1, padding=0)
      self.gate = create_act_layer(gate_layer)
  
file_path: pytorch-image-models/timm/layers/squeeze_excite.py
imports: from torch import nn
  from .create_act import create_act_layer
  from .helpers import make_divisible
label_desc: Use image node_id 1 to create a new EffectiveSEModule object from inherited base classes: nn with example: obj = EffectiveSEModule(channels, add_maxpool, gate_layer)