code: def forward(self, g, node_feat, edge_feat=None):
      if self.embed_size > 0:
          dgl_warning(
              "The embedding for node feature is used, and input node_feat is ignored, due to the provided embed_size."
          )
          h = self.embed.weight
      else:
          h = node_feat
      edge_weight = edge_feat if self.use_edge_weight else None
      for l, layer in enumerate(self.layers):
          h = layer(g, h, edge_weight=edge_weight)
          if l != len(self.layers) - 1:
              h = self.act(h)
              h = self.dropout(h)
      return h
  
file_path: dgl/dglgo/dglgo/model/node_encoder/gcn.py
imports: import dgl
  import torch
  import torch.nn
  from dgl.base import dgl_warning
label_desc: Use image node_id 2 for calling the GCN obj's underlying member method code with example usage: obj.forward(g, node_feat, edge_feat) and returns: h