class_docstr: Learning to downsample module
class_docstr_tok: ["Learning","to","downsample","module"]
code: def __init__(
      self,
      dw_channels1=32,
      dw_channels2=48,
      out_channels=64,
      norm_layer=nn.BatchNorm,
      norm_kwargs=None,
      **kwargs,
  ):
      super(LearningToDownsample, self).__init__()
      with self.name_scope():
          self.conv = _ConvBNReLU(
              3,
              dw_channels1,
              3,
              2,
              norm_layer=norm_layer,
              norm_kwargs=norm_kwargs,
              **kwargs,
          )
          self.dsconv1 = _DSConv(
              dw_channels1,
              dw_channels2,
              2,
              norm_layer=norm_layer,
              norm_kwargs=norm_kwargs,
              **kwargs,
          )
          self.dsconv2 = _DSConv(
              dw_channels2,
              out_channels,
              2,
              norm_layer=norm_layer,
              norm_kwargs=norm_kwargs,
              **kwargs,
          )
  
imports: from mxnet.context import cpu
  from mxnet.gluon.block import HybridBlock
  from mxnet.gluon import nn
label_desc: Use image node_id 1 to create a new LearningToDownsample object from inherited base classes: HybridBlock with example: obj = LearningToDownsample(dw_channels1, dw_channels2, out_channels, norm_layer, norm_kwargs)