code: def __init__(self, cfg):
      super(DPN, self).__init__()
      in_planes, out_planes = cfg["in_planes"], cfg["out_planes"]
      num_blocks, dense_depth = cfg["num_blocks"], cfg["dense_depth"]
  
      self.conv1 = nn.Conv2d(
          3, 64, kernel_size=3, stride=1, padding=1, bias=False
      )
      self.bn1 = nn.BatchNorm2d(64)
      self.last_planes = 64
      self.layer1 = self._make_layer(
          in_planes[0],
          out_planes[0],
          num_blocks[0],
          dense_depth[0],
          stride=1,
      )
      self.layer2 = self._make_layer(
          in_planes[1],
          out_planes[1],
          num_blocks[1],
          dense_depth[1],
          stride=2,
      )
      self.layer3 = self._make_layer(
          in_planes[2],
          out_planes[2],
          num_blocks[2],
          dense_depth[2],
          stride=2,
      )
      self.layer4 = self._make_layer(
          in_planes[3],
          out_planes[3],
          num_blocks[3],
          dense_depth[3],
          stride=2,
      )
      self.linear = nn.Linear(
          out_planes[3] + (num_blocks[3] + 1) * dense_depth[3], 10
      )
  
file_path: nni/examples/trials/cifar10_pytorch/models/dpn.py
imports: import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new DPN object from inherited base classes: nn with example: obj = DPN(cfg)