class_docstr: Mobile inverted bottleneck block with SE.
code: def complexity(cx, w_in, exp_r, k, stride, se_r, w_out):
      w_exp = int(w_in * exp_r)
      if w_exp != w_in:
          cx = conv2d_cx(cx, w_in, w_exp, 1)
          cx = norm2d_cx(cx, w_exp)
      cx = conv2d_cx(cx, w_exp, w_exp, k, stride=stride, groups=w_exp)
      cx = norm2d_cx(cx, w_exp)
      cx = SE.complexity(cx, w_exp, int(w_in * se_r))
      cx = conv2d_cx(cx, w_exp, w_out, 1)
      cx = norm2d_cx(cx, w_out)
      return cx
  
imports: from pycls.core.config import cfg
  from pycls.models.blocks import activation, conv2d, conv2d_cx, drop_connect, gap2d, gap2d_cx, init_weights, linear, linear_cx, norm2d, norm2d_cx, SE
  from torch.nn import Dropout, Module
label_desc: Use image node_id 3 for calling the MBConv obj's underlying member method code with example usage: obj.complexity(cx, w_in, exp_r, k, stride, se_r, w_out) and returns: cx