parameters: (self, num_classes=10, num_channels=3)
docstring: Constructor
          Args:
              num_classes: number of classes
docstring_summary: Constructor
          Args:
              num_classes: number of classes
docstring_tokens: Constructor Args : num_classes : number of classes
function: def __init__(self, num_classes=10, num_channels=3):
          """ Constructor
          Args:
              num_classes: number of classes
          """
          super(Xception, self).__init__()
          self.num_classes = num_classes
          self.input_size = 299
          self.dimension = 4
  
          self.conv1 = layer.Conv2d(num_channels, 32, 3, 2, 0, bias=False)
          self.bn1 = layer.BatchNorm2d(32)
          self.relu1 = layer.ReLU()
  
          self.conv2 = layer.Conv2d(32, 64, 3, 1, 1, bias=False)
          self.bn2 = layer.BatchNorm2d(64)
          self.relu2 = layer.ReLU()
          # do relu here
  
          self.block1 = Block(64,
                              128,
                              2,
                              2,
                              padding=0,
                              start_with_relu=False,
                              grow_first=True)
          self.block2 = Block(128,
                              256,
                              2,
                              2,
                              padding=0,
                              start_with_relu=True,
                              grow_first=True)
          self.block3 = Block(256,
                              728,
                              2,
                              2,
                              padding=0,
                              start_with_relu=True,
                              grow_first=True)
  
          self.block4 = Block(728,
                              728,
                              3,
                              1,
                              start_with_relu=True,
                              grow_first=True)
          self.block5 = Block(728,
                              728,
                              3,
                              1,
                              start_with_relu=True,
                              grow_first=True)
          self.block6 = Block(728,
                              728,
                              3,
                              1,
                              start_with_relu=True,
                              grow_first=True)
          self.block7 = Block(728,
                              728,
                              3,
                              1,
                              start_with_relu=True,
                              grow_first=True)
  
          self.block8 = Block(728,
                              728,
                              3,
                              1,
                              start_with_relu=True,
                              grow_first=True)
          self.block9 = Block(728,
                              728,
                              3,
                              1,
                              start_with_relu=True,
                              grow_first=True)
          self.block10 = Block(728,
                               728,
                               3,
                               1,
                               start_with_relu=True,
                               grow_first=True)
          self.block11 = Block(728,
                               728,
                               3,
                               1,
                               start_with_relu=True,
                               grow_first=True)
  
          self.block12 = Block(728,
                               1024,
                               2,
                               2,
                               start_with_relu=True,
                               grow_first=False)
  
          self.conv3 = layer.SeparableConv2d(1024, 1536, 3, 1, 1)
          self.bn3 = layer.BatchNorm2d(1536)
          self.relu3 = layer.ReLU()
  
          # do relu here
          self.conv4 = layer.SeparableConv2d(1536, 2048, 3, 1, 1)
          self.bn4 = layer.BatchNorm2d(2048)
  
          self.relu4 = layer.ReLU()
          self.globalpooling = layer.MaxPool2d(10, 1)
          self.flatten = layer.Flatten()
          self.fc = layer.Linear(num_classes)
  
          self.softmax_cross_entropy = layer.SoftMaxCrossEntropy()
function_tokens: def __init__ ( self , num_classes = 10 , num_channels = 3 ) : super ( Xception , self ) . __init__ ( ) self . num_classes = num_classes self . input_size = 299 self . dimension = 4 self . conv1 = layer . Conv2d ( num_channels , 32 , 3 , 2 , 0 , bias = False ) self . bn1 = layer . BatchNorm2d ( 32 ) self . relu1 = layer . ReLU ( ) self . conv2 = layer . Conv2d ( 32 , 64 , 3 , 1 , 1 , bias = False ) self . bn2 = layer . BatchNorm2d ( 64 ) self . relu2 = layer . ReLU ( ) # do relu here self . block1 = Block ( 64 , 128 , 2 , 2 , padding = 0 , start_with_relu = False , grow_first = True ) self . block2 = Block ( 128 , 256 , 2 , 2 , padding = 0 , start_with_relu = True , grow_first = True ) self . block3 = Block ( 256 , 728 , 2 , 2 , padding = 0 , start_with_relu = True , grow_first = True ) self . block4 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block5 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block6 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block7 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block8 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block9 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block10 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block11 = Block ( 728 , 728 , 3 , 1 , start_with_relu = True , grow_first = True ) self . block12 = Block ( 728 , 1024 , 2 , 2 , start_with_relu = True , grow_first = False ) self . conv3 = layer . SeparableConv2d ( 1024 , 1536 , 3 , 1 , 1 ) self . bn3 = layer . BatchNorm2d ( 1536 ) self . relu3 = layer . ReLU ( ) # do relu here self . conv4 = layer . SeparableConv2d ( 1536 , 2048 , 3 , 1 , 1 ) self . bn4 = layer . BatchNorm2d ( 2048 ) self . relu4 = layer . ReLU ( ) self . globalpooling = layer . MaxPool2d ( 10 , 1 ) self . flatten = layer . Flatten ( ) self . fc = layer . Linear ( num_classes ) self . softmax_cross_entropy = layer . SoftMaxCrossEntropy ( )