Source code for kornia.metrics.average_meter

from typing import Union

import torch


[docs]class AverageMeter: """Computes and stores the average and current value. Example: >>> stats = AverageMeter() >>> acc1 = torch.tensor(0.99) # coming from K.metrics.accuracy >>> stats.update(acc1, n=1) # where n is batch size usually >>> stats.avg tensor(0.9900) """ def __init__(self) -> None: self.reset() def reset(self): self.val = 0 self.avg = 0 self.sum = 0 self.count = 0 def update(self, val: Union[int, float, bool, torch.Tensor], n: int = 1) -> None: self.val = val self.sum += val * n self.count += n self.avg = self.sum / self.count