code: def __init__(
      self,
      in_dim,
      hid_dim,
      out_dim,
      arch="1-1-0",
      act=F.relu,
      dropout=0,
      batch_norm=False,
      aggr="concat",
  ):
      super(GCNNet, self).__init__()
      self.gcn = nn.ModuleList()
  
      orders = list(map(int, arch.split("-")))
      self.gcn.append(
          GCNLayer(
              in_dim=in_dim,
              out_dim=hid_dim,
              order=orders[0],
              act=act,
              dropout=dropout,
              batch_norm=batch_norm,
              aggr=aggr,
          )
      )
      pre_out = ((aggr == "concat") * orders[0] + 1) * hid_dim
  
      for i in range(1, len(orders) - 1):
          self.gcn.append(
              GCNLayer(
                  in_dim=pre_out,
                  out_dim=hid_dim,
                  order=orders[i],
                  act=act,
                  dropout=dropout,
                  batch_norm=batch_norm,
                  aggr=aggr,
              )
          )
          pre_out = ((aggr == "concat") * orders[i] + 1) * hid_dim
  
      self.gcn.append(
          GCNLayer(
              in_dim=pre_out,
              out_dim=hid_dim,
              order=orders[-1],
              act=act,
              dropout=dropout,
              batch_norm=batch_norm,
              aggr=aggr,
          )
      )
      pre_out = ((aggr == "concat") * orders[-1] + 1) * hid_dim
  
      self.out_layer = GCNLayer(
          in_dim=pre_out,
          out_dim=out_dim,
          order=0,
          act=None,
          dropout=dropout,
          batch_norm=False,
          aggr=aggr,
      )
  
file_path: dgl/examples/pytorch/graphsaint/modules.py
imports: import dgl.function
  import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new GCNNet object from inherited base classes: nn with example: obj = GCNNet(in_dim, hid_dim, out_dim, arch, act, dropout, batch_norm, aggr)