Commit Graph

260 Commits (9038c1c25516c20f144d4cfa267890d9562267f2)

Author SHA1 Message Date
Ma Zerun 9038c1c255
[Feature] Support TTA and add `--tta` in `tools/test.py`. (#1161)
* [Feature] Support TTA and add `--tta` in `tools/test.py`.

* Add unit tests.

* Rename the TTA model to `AverageClsScoreTTA`.
2022-12-30 11:46:17 +08:00
Colle bac181f393
[Feature] Support Multi-task. (#1229)
* unit test for multi_task_head

* [Feature] MultiTaskHead (#628, #481)

* [Fix] lint for multi_task_head

* [Feature] Add `MultiTaskDataset` to support multi-task training.

* Update MultiTaskClsHead

* Update docs

* [CI] Add test mim CI. (#879)

* [Fix] Remove duplicated wide-resnet metafile.

* [Feature] Support MPS device. (#894)

* [Feature] Support MPS device.

* Add `auto_select_device`

* Add unit tests

* [Fix] Fix Albu crash bug. (#918)

* Fix albu BUG: using albu will cause the label from array(x) to array([x]) and crash the trainning

* Fix common

* Using copy incase potential bug in multi-label tasks

* Improve coding

* Improve code logic

* Add unit test

* Fix typo

* Fix yapf

* Bump version to 0.23.2. (#937)

* [Improve] Use `forward_dummy` to calculate FLOPS. (#953)

* Update README

* [Docs] Fix typo for wrong reference. (#1036)

* [Doc] Fix typo in tutorial 2 (#1043)

* [Docs] Fix a typo in ImageClassifier (#1050)

* add mask to loss

* add another pipeline

* adpat the pipeline if there is no mask

* switch mask and task

* first version of multi data smaple

* fix problem with attribut by getattr

* rm img_label suffix, fix 'LabelData' object has no attribute 'gt_label'

* training  without evaluation

* first version work

* add others metrics

* delete evaluation from dataset

* fix linter

* fix linter

* multi metrics

* first version of test

* change evaluate metric

* Update tests/test_models/test_heads.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update tests/test_models/test_heads.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* add tests

* add test for multidatasample

* create a generic test

* create a generic test

* create a generic test

* change multi data sample

* correct test

* test

* add new test

* add test for dataset

* correct test

* correct test

* correct test

* correct test

* fix : #5

* run yapf

* fix linter

* fix linter

* fix linter

* fix isort

* fix isort

* fix docformmater

* fix docformmater

* fix linter

* fix linter

* fix data sample

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update tests/test_structures/test_datasample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/structures/multi_task_data_sample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update tests/test_structures/test_datasample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update tests/test_structures/test_datasample.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* update data sample

* update head

* update head

* update multi data sample

* fix linter

* fix linter

* fix linter

* fix linter

* fix linter

* fix linter

* update head

* fix problem we don't  set pred or  gt

* fix problem we don't  set pred or  gt

* fix problem we don't  set pred or  gt

* fix linter

* fix : #2

* fix : linter

* update multi head

* fix linter

* fix linter

* update data sample

* update data sample

* fix ; linter

* update test

* test pipeline

* update pipeline

* update test

* update dataset

* update dataset

* fix linter

* fix linter

* update formatting

* add test for multi-task-eval

* update formatting

* fix linter

* update test

* update

* add test

* update metrics

* update metrics

* add doc for functions

* fix linter

* training for multitask 1.x

* fix linter

* run flake8

* run linter

* update test

* add mask in evaluation

* update metric doc

* update metric doc

* Update mmcls/evaluation/metrics/multi_task.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/evaluation/metrics/multi_task.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/evaluation/metrics/multi_task.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/evaluation/metrics/multi_task.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/evaluation/metrics/multi_task.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* Update mmcls/evaluation/metrics/multi_task.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* update metric doc

* update metric doc

* Fix cannot import name MultiTaskDataSample

* fix test_datasets

* fix test_datasets

* fix linter

* add an example of multitask

* change name of configs dataset

* Refactor the multi-task support

* correct test and metric

* add test to multidatasample

* add test to multidatasample

* correct test

* correct metrics and clshead

* Update mmcls/models/heads/cls_head.py

Co-authored-by: Colle <piercus@users.noreply.github.com>

* update cls_head.py documentation

* lint

* lint

* fix: lint

* fix linter

* add eval mask

* fix documentation

* fix: single_label.py back to 1.x

* Update mmcls/models/heads/multi_task_head.py

Co-authored-by: Ma Zerun <mzr1996@163.com>

* Remove multi-task configs.

Co-authored-by: mzr1996 <mzr1996@163.com>
Co-authored-by: HinGwenWoong <peterhuang0323@qq.com>
Co-authored-by: Ming-Hsuan-Tu <alec.tu@acer.com>
Co-authored-by: Lei Lei <18294546+Crescent-Saturn@users.noreply.github.com>
Co-authored-by: WRH <12756472+wangruohui@users.noreply.github.com>
Co-authored-by: marouaneamz <maroineamil99@gmail.com>
Co-authored-by: marouane amzil <53240092+marouaneamz@users.noreply.github.com>
2022-12-30 10:36:00 +08:00
Rongjie Li 5b266d9e7c
[Feature] Add clip backbone. (#1258)
* clip backbone added

* passed precommit

* update readme

* update according to PR review

* add missing file

* add unittest

* refine metafile

* refine metafile and readme for readdocs

* refine metafile

* refine metafile

* Update metafile

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-12-22 16:33:57 +08:00
Wangbo Zhao(黑色枷锁) 14dcb69092
[Feature] Add mixmim backbone with checkpoints. (#1224)
* add mixmim backbone

* add mixmim inference

* add docstring, metafile, test and modify readme

* Update README and metafile

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-12-20 16:52:54 +08:00
Songyang Zhang 5547f4cac4
[Feature] Add TinyViT for dev-1.x. (#1042)
* [Feature] add TinyViT for dev-1.x

* [Feature] update readme

* fix lint error

* refactor the code

* [Update] update the args

* [Update] add unit test and fix bugs

* Rename the configuration file

* delete invalid files

* [Feature] update tinyvit readme

* [Feature] update tinyvit readme

* [Feature] update metafile

* Update tinyvit metafile
2022-12-20 13:04:00 +08:00
Ma Zerun b63515111b
[Reproduce] Update ConvNeXt config files. (#1256)
* Update ConvNeXt training configs.

* Update ConvNeXt network.

* Update metafile and README.

* Update README
2022-12-19 13:54:24 +08:00
takuoko 2535c1ecd7
[Feature] Support EVA. (#1239)
* add eva

* add eva

* add eva

* sklearn -> scikit-learn

* add large

* Update model names and links.

* Fix resize pos embed error when loading fp16 weight.

* Remove verbose configs.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-12-14 13:21:33 +08:00
Songyang Zhang 210373c093
[Feature] Implementation of RevViT. (#1127)
* [Feature] implement rev-vit network

* can reproduce the RevViT-Small accuracy 79.9

* update

* [Feature] update revvit

* [Feature] update revvit readme

* Update links

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-12-14 11:46:39 +08:00
Ma Zerun c127c474b9
[Feature] Support getting model from the name defined in the model-index file. (#1236)
* [Feature] Support getting model from the name defined in the model-index file.

* Add unit tests.

* Prevent import `timm` if the `TIMMBackbone` is not used.

* Fix Windows CI.

* Move `init_model` to `mmcls.apis.hub`, and support pass nn.Module to all
model components.

* Fix requirements

* Rename `hub.py` to `model.py` and add unit tests.
2022-12-06 17:00:22 +08:00
Yixiao Fang df2f122daa
[Fix] Fix dict update in BeIT. (#1234)
* fix dict update

* remove breakpoint

* fix key error

* fix lint

* update

* update
2022-12-05 17:59:36 +08:00
Yixiao Fang d80ec5a4b8
[Refactor] Refactor BEiT backbone and support v1/v2 inference. (#1144)
* refactor beit backbone

* use LinearClsHead

* fix mean and std value

* fix lint

* support inference if beit-v2

* update encoder layer and init

* update

* add ut

* add prepare_relative_position_bias_table function

* add cls_token

* fix lint

* add pos_embed check

* update metafile and readme

* update weights link

* update link of weights

* update metafile

* update

* update docstrings

* update according to review

* rename readme

* update docstring

* fix lint
2022-11-29 12:56:33 +08:00
Ma Zerun 13ff394985
Bump version to v1.0.0rc3. (#1211)
* Bump version to v1.0.0rc3

* Update pre-commit hook
2022-11-21 18:21:48 +08:00
Ezra-Yu b0007812d6
[Enhance] Enhance ArcFaceClsHead. (#1181)
* update arcface

* fix unit tests

* add adv-margins

add adv-margins

update arcface

* rebase

* update doc and fix ut

* rebase

* update code

* rebase

* use label data

* update set-margins

* Modify Arcface related method names.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-21 18:10:39 +08:00
takuoko 4fb44f8770
[Feature] EfficientNets NoisyStudent & L2. (#1122)
* add mvit 21k

* add mvit 21k

* add effnet noisy student

* Revert "add mvit 21k"

This reverts commit f51067c559.

* revert mvit pr

* update link and readme

* update readme

* update l2 link

* update link

Co-authored-by: Ezra-Yu <18586273+Ezra-Yu@users.noreply.github.com>
2022-11-21 16:57:13 +08:00
Hubert 629f6447ef
[Feature] Migrate CSRA head to 1.x. (#1177)
* [Feat] add csra to 1x

* minor fix

* add voc metrics

* refine

* add unittest

* minor fix

* add more comments

* Fix docs and metafile.

* Fix docs.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-21 10:39:16 +08:00
Jiahao Wang 72c6bc4864
[Feature] Support RepLKnet backbone. (#1129)
* update replknet configs

* update replknet test

* update replknet model

* update replknet model

* update replknet model

* update replknet model

* Fix docs and config names

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-21 10:18:58 +08:00
takuoko c4f3883a22
[Feature] Support DaViT. (#1105)
* add davit

* fix mixup config

* convert scripts

* lint

* test

* test

* Add checkpoint links.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-16 17:23:55 +08:00
Hubert 992d13e772
[Enhance] add deleting params info in swinv2. (#1142) 2022-11-14 17:07:21 +08:00
Hubert 1b98fc13d9
[Enhance] Add more mobilenetv3 pretrains. (#1154)
* add small-050/075 and move files

* add previous results

* Update checkpoint link

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-14 17:06:39 +08:00
Hakjin Lee cf5879988d
[Feature] Support Activation Checkpointing for ConvNeXt. (#1153)
* Support Activation Checkpointing for ConvNeXt

* Add docstring.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-14 15:04:28 +08:00
Ma Zerun 542143cb41
[Feature] Add TIMM and HuggingFace wrappers to build classifiers from them directly. (#1102)
* [Feature] Add TIMM and HuggingFace wrappers to build classifiers from them directly.

* Support `with_cp` and add docstring.

* Add unit tests.

* Update CI.

* Update docs.
2022-11-10 14:56:19 +08:00
zzc98 9eb6fc4368
[Feature] Add reduction for neck (#978)
* feat: add reduction for neck

* feat: add reduction for neck

* feat: add reduction for neck

* feat:add linear reduction neck

* feat: add reduction neck

* mod out of linearReduction as tuple

* fix typo

* fix unit tests

* fix unit tests

Co-authored-by: Ezra-Yu <18586273+Ezra-Yu@users.noreply.github.com>
2022-11-04 15:44:37 +08:00
takuoko 8cc1fdef52
[Enhancement] RepVGG for YOLOX-PAI for dev-1.x. (#1126) 2022-11-04 15:36:18 +08:00
takuoko d05cbbcf9b
[Feature] Support HorNet Backbone for dev1.x. (#1094)
* add hornet

* add hornet

* fix mixup config

* add optim cfgs

Co-authored-by: Ezra-Yu <18586273+Ezra-Yu@users.noreply.github.com>
2022-11-04 15:33:46 +08:00
zzc98 9506241f73
[Feature] Add arcface head. (#926)
* feat: add arcface head

* feat: add arcface head

* update arcface

* refactor archface head

* update archface head

* update archface head

* use torch.cat instead of torch.hstack to fix ci

Co-authored-by: Ezra-Yu <18586273+Ezra-Yu@users.noreply.github.com>
2022-11-02 17:45:33 +08:00
zzc98 693596bc2f
[Feature] Add Base Retriever and Image2Image Retriever for retrieval tasks. (#1055)
* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* feat: add image retriever

* update retriever

* fix lint

* add hook unit test

* Use `register_buffer` to save prototype vectors and add a progress bar
during preparing prototype.

* update UTs

* update UTs

* fix typo

* modify the hook

Co-authored-by: Ezra-Yu <18586273+Ezra-Yu@users.noreply.github.com>
Co-authored-by: mzr1996 <mzr1996@163.com>
2022-11-02 17:43:56 +08:00
mzr1996 b526f018db [Fix] Fix broken inference api because of the modification in data
preprocessor.
2022-10-18 17:50:35 +08:00
Hubert bcca619066
[Feature] Support MobileViT backbone. (#1068)
* init

* fix

* add config

* add meta

* add unittest

* fix for comments

* Imporvee docstring and support custom arch.

* Update README

* Update windows CI

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-10-18 17:05:59 +08:00
Ma Zerun 29f066f7fb
[Improve] Speed up data preprocessor. (#1064)
* [Improve] Speed up data preprocessor.

* Add ClsDataSample serialization override functions.

* Add unit tests

* Modify configs to fit new mixup args.

* Fix `num_classes` of the ImageNet-21k config.

* Update docs.
2022-10-17 17:08:18 +08:00
takuoko a49c3076e1
[Feature] Support DeiT3. (#1065)
* deit3

deit3

lint

* add tools and test

* deit3

* deit3

* fix preprocess

* lint

* Update config names and checkpoint paths

* Update convert tools to use mmengine, and fix docstring.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-10-10 14:54:20 +08:00
mzr1996 2153a16dc5 [Docs] Fix some docstrings. 2022-10-10 11:17:48 +08:00
whcao 8c5d86a388
[Fix] Fix `loss_weight` in `LabelSmoothLoss`. (#1058) 2022-09-28 08:18:12 +08:00
Ma Zerun 51b7c754e7 [Fix] Fix the output position of Swin-Transformer. (#947)
* [Fix] Fix the output position of Swin-Transformer.

* Rename `downsample` argument to `do_downsample`.
2022-09-22 17:11:52 +08:00
Ma Zerun 034683cfcd
[Feature] Support MViT for MMCLS 1.x (#1023)
* [Feature] Support MViT for MMCLS 1.x

* Add unit tests

* Update documentation
2022-09-22 09:23:49 +08:00
Yuan Liu f7191ca686
[Feature] Add ViT huge architecture. (#1049)
* [Feature]: Add ViT huge settings

* [Feature]: Add comments
2022-09-21 13:27:54 +08:00
Songyang Zhang 81f10ccbb7
[Feature] Support EdgeNeXt for dev-1.x. (#1037)
* [Feature] add EdgeNeXt for dev-1.x

* [Feature] add update

* Imporve EdgeNeXt

* Fix div error in low pytorch version

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-09-21 13:27:04 +08:00
Ma Zerun e9e2d48cb2
[Improve] Update benchmark scripts (#1028)
* Update train benchmark scripts

* Add `--cfg-options` for dev scripts and enhance `--range`.

* Fix bug of regex expression.

* Fix minor bugs

* Update ShuffleNet configs

* Update rsb-a1 configs and label smooth loss mode.

* Update inference dev scripts

* From `mmengine` instead of `mmcv` import fileio.

* Fix lint

* Update pre-commit hook

* Use `use_sigmoid` option instead of "bce" mode in label smooth loss.
2022-09-20 15:50:21 +08:00
Hubert e4e8047563
[Feature] Support Swin Transformer V2 for MMCLS 1.x. (#1029)
* [Feature] support swin v2 in mmcls 1.x

* fix configs

* fix clamp max

* Fix meshgrid

* Imporve swin v2

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-09-20 15:45:27 +08:00
Ezra-Yu aaf127c5e1
[Feature] Add efficientformer Backbone for MMCls 1.x. (#1031)
* rebase

* update filename

* update URL

* update UT

* fix lint

* update head

* add efficientformer

* update filename

* update UT

* fix lint

* update configs

* rebase

* fix unit tests

* Fix comments and docs.

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-09-20 14:56:45 +08:00
Ezra-Yu f1d2f50c21
[Feature] Add MobileOne Backbone For MMCls 1.x. (#1030)
* add mobileOne

* add train cfg

* update cfgs

* update URL

* update configs

* update inceptionv3 metafile

* add configs

* fix lint

* update checkpoint urls

* Update configs

* Update README

Co-authored-by: mzr1996 <mzr1996@163.com>
2022-09-16 11:55:10 +08:00
Ma Zerun 0b61b76325
[Docs] Add Migration documentation. (#997)
* [Docs] Add Migration documentation.

* Fix the train_cfg argument

* [WIP] Improve according to comments

* Imporve according to comments.
2022-08-31 13:31:48 +08:00
Ma Zerun 2b88df4484
[Refactor] Refactor the data flow. (#989)
* [Refactor] Refactor the data flow.

* Add comments about data preprocessor.

* Fix after mmengine folder structure refactoring.
2022-08-26 10:40:43 +08:00
Ma Zerun b7d0d521eb
[Refactor] Use `mmengine` instead of `mmcv` and refactor some transforms. (#986)
* [Refactor] Refactor the rest data transforms and fix some docstring.

* Use `mmengine` instead of `mmcv`

* Refactor KFold dataset tools

* Fix docstring according to comments
2022-08-24 15:59:02 +08:00
Yixiao Fang 5665b8349a
[Refactor] Refactor import dependency. (#977)
Co-authored-by: mzr1996 <mzr1996@163.com>
2022-08-22 15:17:33 +08:00
Ma Zerun 20f9ace5c5
[CI] Add Circle CI for mmcls 1.x. (#970)
* [CI] Add Circle CI for mmcls 1.x

* Fix circle-ci config

* Use `torch.cat` instead of `torch.hstack` to compat with PyTorch 1.6

* Compat the behavior of LongTensor in PyTorch 1.6

* Avoid random behavior in the unit test of Lighting

* Fix cuda ci

* Remove github workflow temporarily.
2022-08-22 15:02:08 +08:00
Yuan Liu e4252d6848
[Feature]: Support BEiT Transformer layer. (#919)
* [Feature]: Add BEiT-style transformer encoder layer

* [Feature]: Add average token

* [Fix]: Fix lint

* [Fix]: Refactor CAE config

* [Fix]: Change cv2 backend to pillow backend

* [Fix]: Fix MAE and CAE reshape bug

* [Feature]: Add freeze vit layers

* [Feature]: Add mc

* [Fix]: Fix lint

* [Fix]: Fix dataset bug

* [Fix]: Delete cae selfsup config

* [Fix]: docstring

* [Refactor]: Add init_values to layer_scalue_init_value

* [Fix]: Refine the docstring of avg_token

* [Fix]: Call super init weight in beit attention

* [Fix]: remove mc

* [Fix]: Fix docstring

* [Fix]: Fix docstring

* [Fix]: Fix lint

* [Fix]: Fix init_value bug and change the logic of outputting cls token

* [Fix]: Fix docstring
2022-08-17 00:07:06 +08:00
Ma Zerun 43e60ad5a6
[Improve] Rename `mmcls.data` to `mmcls.structures`. (#941) 2022-07-29 14:18:13 +08:00
Ezra-Yu 9118b97239 refactor evaluation 2022-07-18 11:11:13 +08:00
Ezra-Yu 6ed3860ea6 refactor UTs 2022-07-18 11:11:13 +08:00
Ezra-Yu 0f30c392a3 from core to engine 2022-07-18 11:11:13 +08:00