class_docstr: Depth-wise separable convolution.
class_docstr_tok: ["Depth-wise","separable","convolution","."]
code: def __init__(
      self,
      in_channels,
      out_channels,
      kernel_size=3,
      stride=1,
      padding=1,
      dilation=1,
      groups=1,
      bias=True,
  ):
      super(DepthwiseSeparableConv2d, self).__init__()
      self.depthwise = nn.Conv2d(
          in_channels,
          in_channels,
          kernel_size=kernel_size,
          dilation=dilation,
          padding=padding,
          stride=stride,
          bias=bias,
          groups=in_channels,
      )
      self.pointwise = nn.Conv2d(
          in_channels,
          out_channels,
          kernel_size=1,
          groups=groups,
          bias=bias,
      )
  
file_path: pytorch-toolbelt/pytorch_toolbelt/modules/dsconv.py
imports: from torch import nn, Tensor
  from pytorch_toolbelt.modules.normalization import instantiate_normalization_block, NORM_BATCH
  from pytorch_toolbelt.modules.activations import instantiate_activation_block
label_desc: Use image node_id 1 to create a new DepthwiseSeparableConv2d object from inherited base classes: nn with example: obj = DepthwiseSeparableConv2d(in_channels, out_channels, kernel_size, stride, padding, dilation, groups, bias)