* [Feature] Add ReduceOnPlateauParamScheduler and change ParamSchedulerHook
* [Feature] add ReduceOnPlateauLR and ReduceOnPlateauMomentum
* pre-commit check
* add a little docs
* change position
* fix the conflict between isort and yapf
* fix ParamSchedulerHook after_val_epoch execute without train_loop and param_schedulers built
* Apply suggestions from code review
Co-authored-by: Mashiro <57566630+HAOCHENYE@users.noreply.github.com>
* update ReduceOnPlateauParamScheduler, ReduceOnPlateauMomentum and ParamSchedulerHook
* fix get need_step_args attribute error in ParamSchedulerHook
* fix load_state_dict error for rule in ReduceOnPlateauParamScheduler
* add docs for ParamSchedulerHook and fix a few codes
* [Docs] add ReduceOnPlateauParamScheduler, ReduceOnPlateauMomentum and ReduceOnPlateauLR docs
* [Refactor] adjust the order of import
* [Fix] add init check for threshold in ReduceOnPlateauParamScheduler
* [Test] add test for ReduceOnPlateauParamScheduler, ReduceOnPlateauLR and ReduceOnPlateauMomentum
* [Fix] fix no attribute self.min_value
* [Fix] fix numerical problem in tests
* [Fix] fix error in tests
* [Fix] fix ignore first param in tests
* [Fix] fix bug in tests
* [Fix] fix bug in tests
* [Fix] fix bug in tests
* [Fix] increase coverage
* [Fix] fix count self._global_step bug and docs
* [Fix] fix tests
* [Fix] modified ParamSchedulerHook test
* Update mmengine/optim/scheduler/param_scheduler.py
Co-authored-by: Mashiro <57566630+HAOCHENYE@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Mashiro <57566630+HAOCHENYE@users.noreply.github.com>
* [Fix] modified something according to commented
* [Docs] add api for en and zh_cn
* [Fix] fix bug in test_param_scheduler_hook.py
* [Test] support more complicated test modes(less, greater, rel, abs) for ReduceOnPlateauParamScheduler
* [Docs] add docs for rule
* [Fix] fix pop from empty list bug in test
* [Fix] fix check param_schedulers is not built bug
* [Fix] fix step_args bug and without runner._train_loop bug
* [Fix] fix step_args bug and without runner._train_loop bug
* [Fix] fix scheduler type bug
* [Test] rename step_args to step_kwargs
* [Fix] remove redundancy check
* [Test] remove redundancy check
* Apply suggestions from code review
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
* [Test] fix some defects
Co-authored-by: Mashiro <57566630+HAOCHENYE@users.noreply.github.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
* Add build_runner_with_tta and PrepareTTAHook
* rename hook file
* support build tta runner with runner type
* add unit test
* Add build_runner_with_tta to index.rst
* minor refine
* Add runner test cast
* Fix unit test
* fix unit test
* tmp save
* pop None if key does not exist
* Fix is_model_wrapper and force register class in test_runner
* [Fix] Fix is_model_wrapper
* destroy group after ut
* register module in testcase
* pass through unit test
* fix as comment
* remove breakpoint
* remove mmengine/testing/runner_test_cast.py
* minor refine
* minor refine
* minor refine
* set default data preprocessor for model
* minor refine
* minor refine
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
* fix lint
* Fix unit test
* replace with in ImgDataPreprocessor
* Fix as comment
* add inference tutorial in advanced tutorial
* update index.rst
* add tta example
* refine tta tutorial
* Add english tutorial
* add note for build_runner_with_tta
* Fix as comment
* add examples
* remove chinese comment
* Update docs/en/advanced_tutorials/test_time_augmentation.md
Co-authored-by: RangiLyu <lyuchqi@gmail.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
Co-authored-by: RangiLyu <lyuchqi@gmail.com>
* First commit
* add BaseTestTimeAugModel
* Add unit test
* move loop logic to test_step
* fix ddp test
* rename model to module
* optim __init__
* Fix as comment
* Fix as comment
* make val_step should not be called
* make tta do not inherit base model
* Fix unit test
* Enhance docstring
* Fix as comment
* Fix as comment
* minor refine
* minor refine
* minor refine
* fix unit test
* minor refine
* minor refine
* minor refine
* minor refine
* minor refine
* minor refine
* fix unit test
* [Refactor] Refactor fileio but without breaking bc
* handle compatibility
* fix format
* modify io functions
* fix ut
* fix ut
* rename method names
* refine
* refine docstring
* fix ut in windows
* update ut
* minor fix
* ensure client is not None when closing it
* add more examples for list_dir_or_file interface
* refine docstring
* refine deprecated info
* fix ut
* add a description for lmdb docstring
* [Refactor]: modify interface of Visualizer.add_datasample (#365)
* [Refactor] Refactor data flow: refine `data_preprocessor`. (#359)
* refine data_preprocessor
* remove unused BATCH_DATA alias
* Fix type hints
* rename move_data to cast_data
* [Refactor] Refactor data flow: collate data in `collate_fn` of `DataLoader` (#323)
* acollate data in dataloader
* fix docstring
* refine comment
* fix as comment
* refactor default collate and psedo collate
* foramt test file
* fix docstring
* fix as comment
* rename elem to data_item
* minor fix
* fix as comment
* [Refactor] Refactor data flow: `data_batch` argument of `Evaluator.process is a `dict` (#360)
* refine evaluator and metric
* compatible with new default collate
* replace default collate with pseudo
* Handle data_batch in metric
* fix unit test
* fix unit test
* fix unit test
* minor refine
* make data_batch optional
make data_batch optional
* rename outputs to predictions
* fix ut
* rename predictions to outputs
* fix docstring
* fix docstring
* fix unit test
* make outputs and data_batch to kwargs
* fix unit test
* keep signature of metric
* fix ut
* rename pred_sample arguments to data_sample(Visualizer)
* fix loop and ut
* [refactor]: Refactor model dataflow (#398)
* [Refactor] Refactor data flow: refine `data_preprocessor`. (#359)
* refine data_preprocessor
* remove unused BATCH_DATA alias
* Fix type hints
* rename move_data to cast_data
* refactor model data flow
tmp_commt
tmp commit
* make val_cfg and test_cfg optional
* roll back runner
* pass test mmdet
* fix as comment
fix as comment
fix ci in DataPreprocessor
* fix ut
* fix ut
* fix rebase main
* [Fix]: Fix test val ddp (#462)
* [Fix] Fix docstring and type hint of data flow (#463)
* Fix docstring of data flow
* change signature of hook
* fix unit test
* resolve conflicts
* fix lint
* Rename data to structure
* adjust the way to import module
* adjust the way to import module
* rename Structure to Data Structures in docs api
* rename structure to structures
* support using some modules of mmengine without torch
* fix circleci config
* fix circleci config
* fix registry ut
* minor fix
* move init method from model/utils to model/weight_init.py
* move init method from model/utils to model/weight_init.py
* move sync_bn to model
* move functions depending on torch to dl_utils
* format import
* fix logging ut
* add weight init in model/__init__.py
* move get_config and get_model to mmengine/hub
* move log_processor.py to mmengine/runner
* fix ut
* Add TimeCounter in dl_utils/__init__.py