class_docstr: Implementation of GCN Model
      
class_docstr_tok: ["Implementation","of","GCN","Model"]
code: def __init__(
      self,
      input_size,
      num_class,
      num_layers=1,
      hidden_size=64,
      dropout=0.5,
  ):
      super(GCN, self).__init__()
      self.num_class = num_class
      self.num_layers = num_layers
      self.hidden_size = hidden_size
      self.dropout = dropout
      self.gcns = nn.LayerList()
      for i in range(self.num_layers):
          if i == 0:
              self.gcns.append(
                  GCNConv(
                      input_size,
                      self.hidden_size,
                      activation="relu",
                      norm=True,
                  )
              )
          else:
              self.gcns.append(
                  GCNConv(
                      self.hidden_size,
                      self.hidden_size,
                      activation="relu",
                      norm=True,
                  )
              )
          self.gcns.append(nn.Dropout(self.dropout))
      self.gcns.append(GCNConv(self.hidden_size, self.num_class))
  
file_path: PGL/examples/gnn_depoly/models/gcn.py
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from .base_conv import BaseConv
label_desc: Use image node_id 1 to create a new GCN object from inherited base classes: nn with example: obj = GCN(input_size, num_class, num_layers, hidden_size, dropout)