import torch class AverageMeter(object): """Computes and stores the average and current value""" def __init__(self): self.reset() def reset(self): self.val = 0 self.avg = 0 self.sum = 0 self.count = 0 def update(self, val, n=1): self.val = val self.sum += val * n self.count += n self.avg = self.sum / self.count def accuracy(output, target): """Computes the Top-1 accuracy for a single prediction""" with torch.no_grad(): pred = output.argmax(dim=1) # Get the highest scoring class correct = pred.eq(target).sum().item() # Compare with the actual target return correct * 100.0 # Convert to percentage