class_docstr: The only difference from vanilla ResNet is that it has 'layer0' module
code: def __init__(self, seresnet: SENet, channels, strides, layers=None):
      if layers is None:
          layers = [1, 2, 3, 4]
      super().__init__(channels, strides, layers)
  
      self.maxpool = seresnet.layer0.pool
      del seresnet.layer0.pool
  
      self.layer0 = seresnet.layer0
      self.layer1 = seresnet.layer1
      self.layer2 = seresnet.layer2
      self.layer3 = seresnet.layer3
      self.layer4 = seresnet.layer4
  
      self._output_strides = _take(strides, layers)
      self._output_filters = _take(channels, layers)
  
imports: from typing import List
  import torch
  from torch import Tensor
  from .common import EncoderModule, _take, make_n_channel_input
  from ..backbone.senet import SENet, se_resnext50_32x4d, se_resnext101_32x4d, se_resnet50, se_resnet101, se_resnet152, senet154
label_desc: Use image node_id 1 to create a new SEResnetEncoder object from inherited base classes: EncoderModule with example: obj = SEResnetEncoder(seresnet, channels, strides, layers)