code: def __init__(
      self,
      in_dim,
      out_dim,
      order=1,
      act=None,
      dropout=0,
      batch_norm=False,
      aggr="concat",
  ):
      super(GCNLayer, self).__init__()
      self.lins = nn.ModuleList()
      self.bias = nn.ParameterList()
      for _ in range(order + 1):
          self.lins.append(nn.Linear(in_dim, out_dim, bias=False))
          self.bias.append(nn.Parameter(th.zeros(out_dim)))
  
      self.order = order
      self.act = act
      self.dropout = nn.Dropout(dropout)
  
      self.batch_norm = batch_norm
      if batch_norm:
          self.offset, self.scale = (
              nn.ParameterList(),
              nn.ParameterList(),
          )
          for _ in range(order + 1):
              self.offset.append(nn.Parameter(th.zeros(out_dim)))
              self.scale.append(nn.Parameter(th.ones(out_dim)))
  
      self.aggr = aggr
      self.reset_parameters()
  
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 GCNLayer object from inherited base classes: nn with example: obj = GCNLayer(in_dim, out_dim, order, act, dropout, batch_norm, aggr)