* Add API inference in the docs and fix readthedocs config.
* Replace some relative link in docs.
* Format docstring for reStructuredText syntax.
* Fix vit paper link
* Fix docstring of `show_results` function in `BaseClassifier`.
* Refactor unit tests folder structure.
* Remove label smooth and Vit test in `test_classifiers.py`
* Rename test_utils in dataset to test_dataset_utils
* Split test_models/test_utils/test_utils.py to multiple sub files.
* Add unit tests of classifiers and heads
* Use patch context manager.
* Add unit test of `is_tracing`, and add warning in `is_tracing` if torch
verison is smaller than 1.6.0
* Add swin transformer archs S, B and L.
* Add SwinTransformer configs
* Add train config files of swin.
* Align init method with original code
* Use nn.Unfold to merge patch
* Change all ConfigDict to dict
* Add init_cfg for all subclasses of BaseModule.
* Use mmcv version init function
* Add Swin README
* Use safer cfg copy method
* Improve docstring and variable name.
* Fix some difference in randaug
Fix BGR bug, align scheduler config.
Fix label smoothing parameter difference.
* Fix missing droppath in attn
* Fix bug of relative posititon table if window width is not equal to
height.
* Make `PatchMerging` more general, support kernel, stride, padding and
dilation.
* Rename `residual` to `identity` in attention and FFN.
* Add `auto_pad` option to auto pad feature map
* Improve docstring.
* Fix bug in ShiftWMSA padding.
* Remove unused `key` and `value` in ShiftWMSA
* Move `PatchMerging` into utils and use common `PatchEmbed`.
* Use latest `LinearClsHead`, train augments and label smooth settings.
And remove original `SwinLinearClsHead`.
* Mark some configs as "Evalution Only".
* Remove useless comment in config
* 1. Move ShiftWindowMSA and WindowMSA to `utils/attention.py`
2. Add docstrings of each module.
3. Fix some variables' names.
4. Other small improvement.
* Add unit tests of swin-transformer and patchmerging.
* Fix some bugs in unit tests.
* Fix bug of rel_position_index if window is not square.
* Make WindowMSA implicit, and add unit tests.
* Add metafile.yml, update readme and model_zoo.
* add mytrain.py for test
* test before layers
* test attr in layers
* test classifier
* delete mytrain.py
* add patchembed and hybridembed
* add patchembed and hybridembed to __init__
* test patchembed and hybridembed
* fix some comments
* Refactor Mobilenetv3 structure and add ConvClsHead.
* Change model's name from 'MobileNetv3' to 'MobileNetV3'
* Modify configs for MobileNetV3 on CIFAR10.
And add MobileNetV3 configs for imagenet
* Fix activate setting bugs in MobileNetV3.
And remove bias in SELayer.
* Modify unittest
* Remove useless config and file.
* Fix mobilenetv3-large arch setting
* Add dropout option in ConvClsHead
* Fix MobilenetV3 structure according to torchvision version.
1. Remove with_expand_conv option in InvertedResidual, it should be decided by channels.
2. Revert activation function, should before SE layer.
* Format code.
* Rename MobilenetV3 arch "big" to "large".
* Add mobilenetv3_small torchvision training recipe
* Modify default `out_indices` of MobilenetV3, now it will change
according to `arch` if not specified.
* Add MobilenetV3 large config.
* Add mobilenetv3 README
* Modify InvertedResidual unit test.
* Refactor ConvClsHead to StackedLinearClsHead, and add unit tests.
* Add unit test for `simple_test` of `StackedLinearClsHead`.
* Fix typo
Co-authored-by: Yidi Shao <ydshao@smail.nju.edu.cn>
* add mytrain.py for test
* test before layers
* test attr in layers
* test classifier
* delete mytrain.py
* add rand_bbox_minmax rand_bbox and cutmix_bbox_and_lam to BaseCutMixLayer
* add mixup_prob to BatchMixupLayer
* add cutmixup
* add cutmixup to __init__
* test classifier with cutmixup
* delete some comments
* set mixup_prob default to 1.0
* add cutmixup to classifier
* use cutmixup
* use cutmixup
* fix bugs
* test cutmixup
* move mixup and cutmix to augment
* inherit from BaseAugment
* add BaseAugment
* inherit from BaseAugment
* rename identity.py
* add @
* build augment
* register module
* rename to augment.py
* delete cutmixup.py
* do not inherit from BaseAugment
* add augments
* use augments in classifier
* prob default to 1.0
* add comments
* use augments
* use augments
* assert sum of augmentation probabilities should equal to 1
* augmentation probabilities equal to 1
* calculate Identity prob
* replace xxx with self.xxx
* add comments
* sync with augments
* for BC-breaking
* delete useless comments in mixup.py
* add mytrain.py for test
* test before layers
* test attr in layers
* test classifier
* delete mytrain.py
* register custom_hooks in runner
* set custom_hooks_config to cfg.get(custom_hooks, None)
* add mytrain.py for test
* test before layers
* test attr in layers
* test classifier
* delete mytrain.py
* move init_cfg to parameter
* isort
* Use a sentinel value to denote the default init_cfg
* Refector label smooth loss, now support mode `original`, `classy_vision`
and `multi_label`.
* Add unittests for label smooth loss.
* Improve docstring of LSR