class_docstr: Depthwise Conv
code: def __init__(
      self,
      in_channels,
      out_channels,
      ksize,
      stride=1,
      bias=False,
      act="silu",
  ):
      super(DWConv, self).__init__()
      self.dw_conv = BaseConv(
          in_channels,
          in_channels,
          ksize=ksize,
          stride=stride,
          groups=in_channels,
          bias=bias,
          act=act,
      )
      self.pw_conv = BaseConv(
          in_channels,
          out_channels,
          ksize=1,
          stride=1,
          groups=1,
          bias=bias,
          act=act,
      )
  
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddle import ParamAttr
  from paddle.regularizer import L2Decay
  from ppdet.core.workspace import register, serializable
  from ppdet.modeling.initializer import conv_init_
  from ..shape_spec import ShapeSpec
label_desc: Use image node_id 1 to create a new DWConv object from inherited base classes: nn with example: obj = DWConv(in_channels, out_channels, ksize, stride, bias, act)