in src/trainer.py [0:0]
def print_stats(self):
"""
Print statistics about the training.
"""
FREQ = 5
if self.n_iter % FREQ != 0:
return
s_iter = "%7i - " % self.n_iter
s_stat = ' || '.join([
'{}: {:7.4f}'.format(k, np.mean(v[-FREQ:])) for k, v in self.stats.items()
if type(v) is list and len(v) > 0
])
# learning rates
s_lr = ""
for k, v in self.optimizers.items():
s_lr = s_lr + (" - %s LR: " % k) + " / ".join("{:.4e}".format(group['lr']) for group in v.param_groups)
# processing speed
new_time = time.time()
diff = new_time - self.last_time
s_speed = "{:7.2f} images/s - ".format(self.stats['processed_i'] * 1.0 / diff)
self.stats['processed_i'] = 0
self.last_time = new_time
# log speed + stats + learning rate
logger.info(s_iter + s_speed + s_stat + s_lr)