* Support HRNet
* Add HRNet configs
* Fix a bug in backward
* Add configs and update docs.
* Not use bias in conv before batch norm
* Defaults to use `norm_eval=False`
* Add unit tests and support out_channels in HRFuseScales
* Update checkpoint path
* Update docstring.
* Remove incorrect files
* Improve according to comments
* Support ConvNeXt
* Add configs of ConvNeXt
* Update dev scripts
* Update docs.
* Use new style README
* Add unit tests.
* Update README
* Imporve according to comments
* Modify refers to timm.
* Imporve according to comments
* Support features_only in TIMMBackbone
based on https://github.com/open-mmlab/mmsegmentation/pull/998
* update test for mmdet
* fix unit test for build_without_timm
* Update docstring
Co-authored-by: mzr1996 <mzr1996@163.com>
* Support to use `indices` to specify which samples to evaluate.
* Add KFoldDataset wrapper
* Rename 'K' to 'num_splits' accroding to sklearn
* Add `kfold-cross-valid.py`
* Add unit tests
* Add help doc and docstring
* Add cosine cool down lr updater
* Use ema hook
* Update decay mult
* Update configs.
* Update T2T-ViT readme and format all readme
* Update swin readme
* Update tnt readme
* Add docstring for `CosineAnnealingCooldownLrUpdaterHook`.
* Update t2t readme and metafile
* sampler bugfixes
* sampler bugfixes
* reorganize code
* minor fixes
* reorganize code
* minor fixes
* Use `mmcv.runner.get_dist_info` instead of `dist` package to get rank
and world size.
* Add `build_dataloader` unit tests and fix sampler's unit tests.
* Fix unit tests
* Fix unit tests
Co-authored-by: mzr1996 <mzr1996@163.com>
* Fix MobileNet V3 configs
* Refactor to support more powerful feature extraction.
* Add unit tests
* Fix unit test
* Imporve according to comments
* Update checkpoints path
* Fix unit tests
* Add docstring of `simple_test`
* Add docstring of `extract_feat`
* Update model zoo
* Support DeiT backbone.
* Use hook to automatically resize pos embed
* Update ViT training setting
* Add deit configs and update docs
* Fix vit arch assertion
* Remove useless init function
* Add unit tests.
* Fix resize_pos_embed for DeiT
* Improve according to comments.
* [Enhance] Imporve efficiency of precision, recall, f1_score and support.
* Fix bugs
* Use np.maximum since torch doesn't have maximum before torch 1.7
* Fix bug
* impl lamb
* Add unit tests
* Fix unit test
* Fix unit tests
* Use list instead of tuple in `__all__` according to PEP8
Co-authored-by: mzr1996 <mzr1996@163.com>
* Added NumClassCheckHook and CI tests
* Added HOOKS local registry. NumClassCheckHook and unit test files redistribution.
* Extended hook for supporting IterRunner & EpochRunner. Extended unit test.
* Simplification of ClassNumCheckHook. Minor changes.
* implement the conformer
* format code style
* format code style
* reuse the TransformerEncoderLayer in the vision_transformer.py
* Modify variable name
* delete unused params
* Remove warning info in Conformer head since it already exists in
Conformer.
* Rename some variables
* Add unit tests
* Use `getattr` instead of `get_submodule`.
* Remove some useless layers
* Refactor conformer and add configs
* Update configs and add metafile.
* Fix unit tests
* Update README
Co-authored-by: mzr1996 <mzr1996@163.com>
* Update swin_transformer.py
fix bug;
layer_norm 0,1,2,3 will be the same and resulted in an error when out_indices dict exceed one element.
* fix bug, layer_norm 0,1,2,3
* Add unit tests for multiple out_indices
Co-authored-by: cxiang26 <cq.xiang@foxmail.com>
Co-authored-by: mzr1996 <mzr1996@163.com>
* fix dataset wrapper bug and add unit tests
* fix dataset wrapper bug and add unit tests
* update unit tests
* fix lint
* align interface to mmdet
* update unit tests
* refactor resize, test tobe done
* resize reimpl according to discussion; add pad
* minor fixes and add tests
* minor fixes on docstring
* add additional unit test
* reformat resize and pad
* revise code and docstr according to the comments
* add vis lr
* add doc
* Update doc and rm load_json_log in analysis
* Update docs
* add unit tests and update docstring
* fix unit-tests
* Use DummyIterBasedRunner and DummyEpochBasedRunner to simulate training
process.
* rm function val and add judge
* update docs
* improve english expression
* Update docs/tools/visualization.md
Co-authored-by: Ma Zerun <mzr1996@163.com>
* fix typo and ImageNet datasize
* fix typo
* update example
Co-authored-by: mzr1996 <mzr1996@163.com>
* add imagnet21k
* Update unit test
* update imaenet21k
* use slots
* use slots
* rename Data_item to ImageInfo
* add unit tests
* Update unit tests
* rm some print
* update unit tests
* fix lint
* remove default value of pipeline
* Add Res2Net from mmdet, and change it to mmcls style.
* Align structure with official repo
* Support `deep_stem` and `avg_down` option
* Add Res2Net configs
* Add metafile&README and update model zoo
* Add unit tests
* Imporve docstring.
* Improve according to comments.
* [Squash] Refator ViT (from #295)
* Use base variable to simplify auto_aug setting
* Use common PatchEmbed, remove HybridEmbed and refactor ViT init
structure.
* Add `output_cls_token` option and change the output format of ViT and
input format of ViT head.
* Update unit tests and add test for `output_cls_token`.
* Support out_indices.
* Standardize config files
* Support resize position embedding.
* Add readme file of vit
* Rename config file
* Improve docs about ViT.
* Update docstring
* Use local version `MultiheadAttention` instead of mmcv version.
* Fix MultiheadAttention
* Support `qk_scale` argument in `MultiheadAttention`
* Improve docs and change `layer_cfg` to `layer_cfgs` and support
sequence.
* Use init_cfg to init Linear layer in VisionTransformerHead
* update metafile
* Update checkpoints and configs
* Imporve docstring.
* Update README
* Revert GAP modification.
* Add `BaseImshowContextmanager` and `ImshowInfosContextManager` to reuse
matplotlib figure.
* Use context manager to implement `imshow_infos`
* Add unit tests.
* More general base context manager.
* unit tests for context manager.
* Improve docstring.
* Fix context manager exit cannot close figure when matplotlib>=3.4.0
* Fix unit tests
* Support inline backend in visualization.
* Add RepVGG code.
* Add se_module as plugin.
* Add the repvggA0 primitive config
* Change repvggA0.py to fit mmcls
* Add RepVGG configs
* Add repvgg_to_mmcls
* Add tools/deployment/convert_repvggblock_param_to_deploy.py
* Change configs/repvgg/README.md
* Streamlining the number of configuration files.
* Fix lints
* Delete plugins
* Delete code about plugin.
* Modify the code for using se module.
* Modify config to fit repvgg with se.
* Change se_cfg to allow loading of pre-training parameters.
* Reduce the complexity of the configuration file.
* Finsh unitest for repvgg.
* Fix bug about se in repvgg_to_mmcls.
* Rename convert_repvggblock_param_to_deploy.py to reparameterize_repvgg.py, and delete setting about device.
* test commit
* test commit
* test commit command
* Modify repvgg.py to make the code more readable.
* Add value=0 in F.pad()
* Add se_cfg to arch_settings.
* Fix bug.
* modeify some attr name and Update unit tests
* rename stage_0 to stem and branch_identity to branch_norm
* update unit tests
* add m.eval in unit tests
* [Enhance] Enhence SE layer to support custom squeeze channels. (#417)
* add enhenced SE
* Update
* rm basechannel
* fix docstring
* Update se_layer.py
fix docstring
* [Docs] Add algorithm readme and update meta yml (#418)
* Add README.md for models without checkpoints.
* Update model-index.yml
* Update metafile.yml of seresnet
* [Enhance] Add `hparams` argument in `AutoAugment` and `RandAugment` and some other improvement. (#398)
* Add hparams argument in `AutoAugment` and `RandAugment`.
And `pad_val` supports sequence instead of tuple only.
* Add unit tests for `AutoAugment` and `hparams` in `RandAugment`.
* Use smaller test image to speed up uni tests.
* Use hparams to simplify RandAugment config in swin-transformer.
* Rename augment config name from `pipeline` to `pipelines`.
* Add some commnet ad docstring.
* [Feature] Support classwise weight in losses (#388)
* Add classwise weight in losses:CE,BCE,softBCE
* Update unit test
* rm some extra code
* rm some extra code
* fix broadcast
* fix broadcast
* update unit tests
* use new_tensor
* fix lint
* [Enhance] Better result visualization (#419)
* Imporve result visualization to support wait time and change the backend
to matplotlib.
* Add unit test for visualization
* Add adaptive dpi function
* Rename `imshow_cls_result` to `imshow_infos`.
* Support str in `imshow_infos`
* Improve docstring.
* Bump version to v0.15.0 (#426)
* [CI] Add PyTorch 1.9 and Python 3.9 build workflow, and remove some CI. (#422)
* Add PyTorch 1.9 build workflow, and remove some CI.
* Add Python 3.9 CI
* Show Python 3.9 support.
* [Enhance] Rename the option `--options` in some tools to `--cfg-options`. (#425)
* [Docs] Fix sphinx version (#429)
* [Docs] Add `CITATION.cff` (#428)
* Add CITATION.cff
* Fix typo in setup.py
* Change author in setup.py
* modeify some attr name and Update unit tests
* rename stage_0 to stem and branch_identity to branch_norm
* update unit tests
* add m.eval in unit tests
* Update unit tests
* refactor
* refactor
* Alignment inference accuracy
* Update configs, readme and metafile
* Update readme
* return tuple and fix metafile
* fix unit test
* rm regnet and classifiers changes
* update auto_aug
* update metafile & readme
* use delattr
* rename cfgs
* Update checkpoint url
* Update readme
* Rename config files.
* Update readme and metafile
* add comment
* Update mmcls/models/backbones/repvgg.py
Co-authored-by: Ma Zerun <mzr1996@163.com>
* Update docstring
* Improve docstring.
* Update unittest_testblock
Co-authored-by: Ezra-Yu <1105212286@qq.com>
Co-authored-by: Ma Zerun <mzr1996@163.com>
* Defaults to return tuple in all backbones.
* Compat downstream of swin transformer.
* Support tuple input for multi label head and stacked head.
* Fix backbone unit tests for tuple output.
* Add downstream inference unit tests for mmdet.
* Update gitignore
* Add unit tests for `return_tuple` option
* Add unit tests for head input tuple.
* Add warning in `simple_test`
* Add TIMMBackbone return tuple.
* Modify timm backbone unit test.
* Add wrapper to use backbones from timm
* Add tests
* Remove timm from optional deps and modify GitHub workflow.
Co-authored-by: mzr1996 <mzr1996@163.com>
* Imporve result visualization to support wait time and change the backend
to matplotlib.
* Add unit test for visualization
* Add adaptive dpi function
* Rename `imshow_cls_result` to `imshow_infos`.
* Support str in `imshow_infos`
* Improve docstring.
* Add classwise weight in losses:CE,BCE,softBCE
* Update unit test
* rm some extra code
* rm some extra code
* fix broadcast
* fix broadcast
* update unit tests
* use new_tensor
* fix lint