code: def __init__(
      self,
      inplanes,
      planes,
      stride=1,
      norm_layer=None,
      bn_eps=1e-5,
      bn_momentum=0.1,
      downsample=None,
      dilate=None,
  ):
      super(Bottleneck, self).__init__()
      self.conv1 = nn.Conv2D(
          inplanes, planes, kernel_size=1, bias_attr=False
      )
      self.bn1 = norm_layer(
          planes, epsilon=bn_eps, momentum=bn_momentum
      )
  
      if dilate is not None:
          self.conv2 = nn.Conv2D(
              planes,
              planes,
              kernel_size=3,
              stride=stride,
              padding=dilate,
              dilation=dilate,
              bias_attr=False,
          )
      else:
          self.conv2 = nn.Conv2D(
              planes,
              planes,
              kernel_size=3,
              stride=stride,
              padding=1,
              bias_attr=False,
          )
  
      self.bn2 = norm_layer(
          planes, epsilon=bn_eps, momentum=bn_momentum
      )
      self.conv3 = nn.Conv2D(
          planes,
          planes * self.expansion,
          kernel_size=1,
          bias_attr=False,
      )
      self.bn3 = norm_layer(
          planes * self.expansion, epsilon=bn_eps, momentum=bn_momentum
      )
      self.relu = nn.ReLU()
      self.relu_inplace = nn.ReLU()
      self.downsample = downsample
      self.stride = stride
  
imports: import paddle.nn
  from paddleseg.utils import utils
  from paddleseg.models import layers
  from paddleseg.cvlibs import manager
label_desc: Use image node_id 1 to create a new Bottleneck object from inherited base classes: nn with example: obj = Bottleneck(inplanes, planes, stride, norm_layer, bn_eps, bn_momentum, downsample, dilate)