27 lines
		
	
	
		
			717 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			717 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| ##################################################
 | |
| # Copyright (c) Xuanyi Dong [GitHub D-X-Y], 2019 #
 | |
| ##################################################
 | |
| import time, sys
 | |
| import numpy as np
 | |
| 
 | |
| 
 | |
| class AverageMeter(object):     
 | |
|   """Computes and stores the average and current value"""    
 | |
|   def __init__(self):   
 | |
|     self.reset()
 | |
|   
 | |
|   def reset(self):
 | |
|     self.val   = 0.0
 | |
|     self.avg   = 0.0
 | |
|     self.sum   = 0.0
 | |
|     self.count = 0.0
 | |
|   
 | |
|   def update(self, val, n=1): 
 | |
|     self.val = val    
 | |
|     self.sum += val * n     
 | |
|     self.count += n
 | |
|     self.avg = self.sum / self.count    
 | |
| 
 | |
|   def __repr__(self):
 | |
|     return ('{name}(val={val}, avg={avg}, count={count})'.format(name=self.__class__.__name__, **self.__dict__))
 |