code: def __init__(self, num_classes=10, num_channels=1):
      super(AlexNet, self).__init__()
      self.num_classes = num_classes
      self.input_size = 224
      self.dimension = 4
      self.conv1 = layer.Conv2d(
          num_channels, 64, 11, stride=4, padding=2
      )
      self.conv2 = layer.Conv2d(64, 192, 5, padding=2)
      self.conv3 = layer.Conv2d(192, 384, 3, padding=1)
      self.conv4 = layer.Conv2d(384, 256, 3, padding=1)
      self.conv5 = layer.Conv2d(256, 256, 3, padding=1)
      self.linear1 = layer.Linear(4096)
      self.linear2 = layer.Linear(4096)
      self.linear3 = layer.Linear(num_classes)
      self.pooling1 = layer.MaxPool2d(2, 2, padding=0)
      self.pooling2 = layer.MaxPool2d(2, 2, padding=0)
      self.pooling3 = layer.MaxPool2d(2, 2, padding=0)
      self.avg_pooling1 = layer.AvgPool2d(3, 2, padding=0)
      self.relu1 = layer.ReLU()
      self.relu2 = layer.ReLU()
      self.relu3 = layer.ReLU()
      self.relu4 = layer.ReLU()
      self.relu5 = layer.ReLU()
      self.relu6 = layer.ReLU()
      self.relu7 = layer.ReLU()
      self.flatten = layer.Flatten()
      self.dropout1 = layer.Dropout()
      self.dropout2 = layer.Dropout()
      self.softmax_cross_entropy = layer.SoftMaxCrossEntropy()
  
file_path: singa/examples/cifar_distributed_cnn/model/alexnet.py
imports: from singa import layer
  from singa import model
label_desc: Use image node_id 1 to create a new AlexNet object from inherited base classes: model with example: obj = AlexNet(num_classes, num_channels)