code: def run(
      args, graph, labels, pred, train_idx, val_idx, test_idx, evaluator
  ):
      evaluator_wrapper = lambda pred, labels: evaluator.eval(
          {
              "y_pred": pred.argmax(dim=-1, keepdim=True),
              "y_true": labels,
          }
      )["acc"]
  
      y = pred.clone()
      y[train_idx] = (
          F.one_hot(labels[train_idx], n_classes).float().squeeze(1)
      )
      # dy = torch.zeros(graph.num_nodes(), n_classes, device=device)
      # dy[train_idx] = F.one_hot(labels[train_idx], n_classes).float().squeeze(1) - pred[train_idx]
  
      _train_acc, val_acc, test_acc = evaluate(
          labels, y, train_idx, val_idx, test_idx, evaluator_wrapper
      )
  
      # print("train acc:", _train_acc)
      print("original val acc:", val_acc)
      print("original test acc:", test_acc)
  
      # NOTE: Only "smooth" is performed here.
      # smoothed_dy = general_outcome_correlation(
      #     graph, dy, alpha=args.alpha1, use_norm=args.use_norm, post_step=lambda x: x.clamp(-1, 1)
      # )
  
      # y[train_idx] = F.one_hot(labels[train_idx], n_classes).float().squeeze(1)
      # smoothed_dy = smoothed_dy
      # y = y + args.alpha2 * smoothed_dy  # .clamp(0, 1)
  
      smoothed_y = general_outcome_correlation(
          graph,
          y,
          alpha=args.alpha,
          use_norm=args.use_norm,
          post_step=lambda x: x.clamp(0, 1),
      )
  
      _train_acc, val_acc, test_acc = evaluate(
          labels,
          smoothed_y,
          train_idx,
          val_idx,
          test_idx,
          evaluator_wrapper,
      )
  
      # print("train acc:", _train_acc)
      print("val acc:", val_acc)
      print("test acc:", test_acc)
  
      return val_acc, test_acc
  
file_path: dgl/examples/pytorch/ogb/ogbn-arxiv/correct_and_smooth.py
imports: import argparse
  import glob
  import numpy
  import torch
  import torch.nn.functional
  from dgl import function
  from ogb.nodeproppred import DglNodePropPredDataset, Evaluator
label_desc: Use image node_id 5 for calling a global function with example usage: run(args, graph, labels, pred, train_idx, val_idx, test_idx, evaluator) and returns: val_acc,  test_acc