fix nested build function calls (#244)

pull/256/head
RangiLyu 2022-05-21 14:41:08 +08:00 committed by GitHub
parent 11688507ba
commit ba6b06100c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 9 deletions

View File

@ -1110,15 +1110,6 @@ class Runner:
else:
loop = IterBasedTrainLoop(
**loop_cfg, runner=self, dataloader=self._train_dataloader)
# `build_optimizer` should be called before `build_param_scheduler`
# because the latter depends on the former
self.optimizer = self.build_optimizer(self.optimizer)
if self.param_schedulers:
self.param_schedulers = self.build_param_scheduler( # type: ignore
self.param_schedulers) # type: ignore
return loop # type: ignore
def build_val_loop(self, loop: Union[BaseLoop, Dict]) -> BaseLoop:
@ -1241,6 +1232,14 @@ class Runner:
self._train_loop = self.build_train_loop(
self._train_loop) # type: ignore
# `build_optimizer` should be called before `build_param_scheduler`
# because the latter depends on the former
self.optimizer = self.build_optimizer(self.optimizer)
if self.param_schedulers:
self.param_schedulers = self.build_param_scheduler( # type: ignore
self.param_schedulers) # type: ignore
if self._val_loop is not None:
self._val_loop = self.build_val_loop(
self._val_loop) # type: ignore