code: def forward(
      self, graph_mb_data, target_classes, original_supernode_idxs
  ):
      logits, _ = self._logits(graph_mb_data)
      with torch.no_grad():
          self.__sum_accuracy += (
              torch.argmax(logits, dim=-1) == target_classes
          ).sum()
          self.__num_samples += target_classes.shape[0]
      return self.__loss(logits, target_classes)
  
imports: from typing_extensions import TypedDict
  import numpy
  import torch
  from dpu_utils.mlutils import Vocabulary
  from torch import nn
  from typing import Any, Counter, Dict, Iterator, List, NamedTuple, Optional, Tuple, Union
  from ptgnn.baseneuralmodel import AbstractNeuralModel, ModuleWithMetrics
  from ptgnn.baseneuralmodel.utils.data import enforce_not_None
  from ptgnn.neuralmodels.gnn import GnnOutput, GraphData, TensorizedGraphData
  from ptgnn.neuralmodels.gnn.graphneuralnetwork import GraphNeuralNetwork, GraphNeuralNetworkModel
label_desc: Use image node_id 6 for calling the Graph2ClassModule obj's underlying member method code with example usage: obj.forward(graph_mb_data, target_classes, original_supernode_idxs) and returns: self