class_docstr: Inverted residual block w/ optional SE
  
  Originally used in MobileNet-V2 - https://arxiv.org/abs/1801.04381v4, this layer is often
  referred to as 'MBConv' for (Mobile inverted bottleneck conv) and is also used in
    * MNasNet - https://arxiv.org/abs/1807.11626
    * EfficientNet - https://arxiv.org/abs/1905.11946
    * MobileNet-V3 - https://arxiv.org/abs/1905.02244
class_docstr_tok: ["Inverted","residual","block","w\/","optional","SE","Originally","used","in","MobileNet-V2","-","https",":","\/\/arxiv.org\/abs\/1801.04381v4",",","this","layer","is","often","referred","to","as","'MBConv","'","for","(","Mobile","inverted","bottleneck","conv",")","and","is","also","used","in","*","MNasNet","-","https",":","\/\/arxiv.org\/abs\/1807.11626","*","EfficientNet","-","https",":","\/\/arxiv.org\/abs\/1905.11946","*","MobileNet-V3","-","https",":","\/\/arxiv.org\/abs\/1905.02244"]
code: def forward(self, x):
      shortcut = x
      x = self.conv_pw(x)
      x = self.bn1(x)
      x = self.conv_dw(x)
      x = self.bn2(x)
      x = self.se(x)
      x = self.conv_pwl(x)
      x = self.bn3(x)
      if self.has_skip:
          x = self.drop_path(x) + shortcut
      return x
  
imports: import torch
  import torch.nn
  from torch.nn import functional
  from timm.layers import create_conv2d, DropPath, make_divisible, create_act_layer, get_norm_act_layer
label_desc: Use image node_id 3 for calling the InvertedResidual obj's underlying member method code with example usage: obj.forward(x) and returns: x