@@ -225,28 +225,48 @@ def register_training_hooks(self,
225
225
optimizer_config = None ,
226
226
checkpoint_config = None ,
227
227
log_config = None ,
228
- momentum_config = None ):
228
+ momentum_config = None ,
229
+ custom_hooks_config = None ):
229
230
"""Register default hooks for iter-based training.
230
231
232
+ Checkpoint hook, optimizer stepper hook and logger hooks will be set to
233
+ `by_epoch=False` by default.
234
+
231
235
Default hooks include:
232
236
233
- - LrUpdaterHook
234
- - MomentumUpdaterHook
235
- - OptimizerStepperHook
236
- - CheckpointSaverHook
237
- - IterTimerHook
238
- - LoggerHook(s)
237
+ +----------------------+-------------------------+
238
+ | Hooks | Priority |
239
+ +======================+=========================+
240
+ | LrUpdaterHook | VERY_HIGH (10) |
241
+ +----------------------+-------------------------+
242
+ | MomentumUpdaterHook | HIGH (30) |
243
+ +----------------------+-------------------------+
244
+ | OptimizerStepperHook | ABOVE_NORMAL (40) |
245
+ +----------------------+-------------------------+
246
+ | CheckpointSaverHook | NORMAL (50) |
247
+ +----------------------+-------------------------+
248
+ | IterTimerHook | LOW (70) |
249
+ +----------------------+-------------------------+
250
+ | LoggerHook(s) | VERY_LOW (90) |
251
+ +----------------------+-------------------------+
252
+ | CustomHook(s) | defaults to NORMAL (50) |
253
+ +----------------------+-------------------------+
254
+
255
+ If custom hooks have same priority with default hooks, custom hooks
256
+ will be triggered after default hooks.
239
257
"""
240
258
if checkpoint_config is not None :
241
259
checkpoint_config .setdefault ('by_epoch' , False )
242
260
if lr_config is not None :
243
261
lr_config .setdefault ('by_epoch' , False )
244
- self .register_lr_hook (lr_config )
245
- self .register_momentum_hook (momentum_config )
246
- self .register_optimizer_hook (optimizer_config )
247
- self .register_checkpoint_hook (checkpoint_config )
248
- self .register_hook (IterTimerHook ())
249
262
if log_config is not None :
250
263
for info in log_config ['hooks' ]:
251
264
info .setdefault ('by_epoch' , False )
252
- self .register_logger_hooks (log_config )
265
+ super (IterBasedRunner , self ).register_training_hooks (
266
+ lr_config = lr_config ,
267
+ momentum_config = momentum_config ,
268
+ optimizer_config = optimizer_config ,
269
+ checkpoint_config = checkpoint_config ,
270
+ log_config = log_config ,
271
+ timer_config = IterTimerHook (),
272
+ custom_hooks_config = custom_hooks_config )
0 commit comments