code: def __init__(
      self,
      in_channels,
      out_channels,
      kernel_size=3,
      stride=1,
      padding=0,
      bias_attr=False,
      groups=1,
      act=nn.GELU,
  ):
      super().__init__()
      self.conv = nn.Conv2D(
          in_channels=in_channels,
          out_channels=out_channels,
          kernel_size=kernel_size,
          stride=stride,
          padding=padding,
          groups=groups,
          weight_attr=paddle.ParamAttr(
              initializer=nn.initializer.KaimingUniform()
          ),
          bias_attr=bias_attr,
      )
      self.norm = nn.BatchNorm2D(out_channels)
      self.act = act()
  
imports: from paddle import ParamAttr
  from paddle.nn.initializer import KaimingNormal
  import numpy
  import paddle
  import paddle.nn
  from paddle.nn.initializer import TruncatedNormal, Constant, Normal
label_desc: Use image node_id 1 to create a new ConvBNLayer object from inherited base classes: nn with example: obj = ConvBNLayer(in_channels, out_channels, kernel_size, stride, padding, bias_attr, groups, act)