| 249 | return self.trainer.get_predictor(self._in_names, self._out_names, device=idx) |
| 250 | |
| 251 | def _before_train(self): |
| 252 | eval_period = cfg.TRAIN.EVAL_PERIOD |
| 253 | self.epochs_to_eval = set() |
| 254 | for k in itertools.count(1): |
| 255 | if k * eval_period > self.trainer.max_epoch: |
| 256 | break |
| 257 | self.epochs_to_eval.add(k * eval_period) |
| 258 | self.epochs_to_eval.add(self.trainer.max_epoch) |
| 259 | logger.info("[EvalCallback] Will evaluate every {} epochs".format(eval_period)) |
| 260 | |
| 261 | def _eval(self): |
| 262 | logdir = self._output_dir |