code: def __init__(self, inp, oup, stride, expansion):
      super().__init__()
      self.connect = stride == 1 and inp == oup
  
      self.conv = nn.Sequential(
          # 1*1 conv
          nn.Conv2D(inp, inp * expansion, 1, 1, 0, bias_attr=False),
          nn.BatchNorm2D(inp * expansion),
          nn.PReLU(inp * expansion),
          # 3*3 depth wise conv
          nn.Conv2D(
              inp * expansion,
              inp * expansion,
              3,
              stride,
              1,
              groups=inp * expansion,
              bias_attr=False,
          ),
          nn.BatchNorm2D(inp * expansion),
          nn.PReLU(inp * expansion),
          # 1*1 conv
          nn.Conv2D(inp * expansion, oup, 1, 1, 0, bias_attr=False),
          nn.BatchNorm2D(oup),
      )
  
file_path: insightface/recognition/arcface_paddle/dynamic/backbones/mobilefacenet.py
imports: import paddle
  from paddle import nn
  import math
label_desc: Use image node_id 1 to create a new BottleNeck object from inherited base classes: nn with example: obj = BottleNeck(inp, oup, stride, expansion)