code: def forward(self, g, feature):
      # Creating a local scope so that all the stored ndata and edata
      # (such as the `'h'` ndata below) are automatically popped out
      # when the scope exits.
      with g.local_scope():
          g.ndata["h"] = feature
          g.update_all(gcn_msg, gcn_reduce)
          h = g.ndata["h"]
          return self.linear(h)
  
file_path: dgl/tutorials/models/1_gnn/1_gcn.py
imports: import os
  import dgl
  import dgl.function
  import torch
  import torch.nn
  import torch.nn.functional
  from dgl import DGLGraph
  from dgl.data import CoraGraphDataset
  import time
  import numpy
label_desc: Use image node_id 2 for calling the GCNLayer obj's underlying member method code with example usage: obj.forward(g, feature) and returns: self