code: def forward(self, features):
      positive = self.encoder(features, corrupt=False)
      negative = self.encoder(features, corrupt=True)
      summary = torch.sigmoid(positive.mean(dim=0))
  
      positive = self.discriminator(positive, summary)
      negative = self.discriminator(negative, summary)
  
      l1 = self.loss(positive, torch.ones_like(positive))
      l2 = self.loss(negative, torch.zeros_like(negative))
  
      return l1 + l2
  
imports: import math
  import torch
  import torch.nn
  from gcn import GCN
label_desc: Use image node_id 2 for calling the DGI obj's underlying member method code with example usage: obj.forward(features) and returns: unknown