MCPcopy Create free account
hub / github.com/DragonisCV/RAM / __call__

Method __call__

ram/utils/logger.py:72–115  ·  view source on GitHub ↗

Format logging message. Args: log_vars (dict): It contains the following keys: epoch (int): Epoch number. iter (int): Current iter. lrs (list): List for learning rates. time (float): Iter time. data

(self, log_vars)

Source from the content-addressed store, hash-verified

70
71 @master_only
72 def __call__(self, log_vars):
73 """Format logging message.
74
75 Args:
76 log_vars (dict): It contains the following keys:
77 epoch (int): Epoch number.
78 iter (int): Current iter.
79 lrs (list): List for learning rates.
80
81 time (float): Iter time.
82 data_time (float): Data time for each iter.
83 """
84 # epoch, iter, learning rates
85 epoch = log_vars.pop('epoch')
86 current_iter = log_vars.pop('iter')
87 lrs = log_vars.pop('lrs')
88
89 message = (f'[{self.exp_name[:5]}..][epoch:{epoch:3d}, iter:{current_iter:8,d}, lr:(')
90 for v in lrs:
91 message += f'{v:.3e},'
92 message += ')] '
93
94 # time and estimated time
95 if 'time' in log_vars.keys():
96 iter_time = log_vars.pop('time')
97 data_time = log_vars.pop('data_time')
98
99 total_time = time.time() - self.start_time
100 time_sec_avg = total_time / (current_iter - self.start_iter + 1)
101 eta_sec = time_sec_avg * (self.max_iters - current_iter - 1)
102 eta_str = str(datetime.timedelta(seconds=int(eta_sec)))
103 message += f'[eta: {eta_str}, '
104 message += f'time (data): {iter_time:.3f} ({data_time:.3f})] '
105
106 # other items, especially losses
107 for k, v in log_vars.items():
108 message += f'{k}: {v:.4e} '
109 # tensorboard logger
110 if self.use_tb_logger and 'debug' not in self.exp_name:
111 if k.startswith('l_'):
112 self.tb_logger.add_scalar(f'losses/{k}', v, current_iter)
113 else:
114 self.tb_logger.add_scalar(k, v, current_iter)
115 self.logger.info(message)
116
117
118@master_only

Callers

nothing calls this directly

Calls 1

keysMethod · 0.80

Tested by

no test coverage detected