code: def accuracy(output, target, topk=(1,)):
      maxk = max(topk)
      batch_size = target.size(0)
  
      _, pred = output.topk(maxk, 1, True, True)
      pred = pred.t()
      correct = pred.eq(target.view(1, -1).expand_as(pred))
  
      res = []
      for k in topk:
          correct_k = (
              correct[:k].reshape(-1).float().sum(0, keepdim=True)
          )
          res.append(correct_k.mul_(100.0 / batch_size))
      return res
  
file_path: nni/examples/nas/legacy/oneshot/proxylessnas/retrain.py
imports: import time
  import math
  from datetime import timedelta
  import torch
  from torch import nn
  from nni.nas.pytorch.utils import AverageMeter
label_desc: Use image node_id 2 for calling a global function with example usage: accuracy(output, target, topk) and returns: res