You are reading the documentation for MMClassification 0.x, which will soon be deprecated at the end of 2022. We recommend you upgrade to MMClassification 1.0 to enjoy fruitful new features and better performance brought by OpenMMLab 2.0. Check the installation tutorial, migration tutorial and changelog for more details.
Support MLU backend.
dist_train_arm.shfor ARM device and update NPU results. (#1218)
Support mmcls with NPU backend. (#1072)
Fix performance issue in convnext DDP train. (#1098)
Support HorNet, EfficientFormerm, SwinTransformer V2 and MViT backbones.
Support Standford Cars dataset.
[Improve] replace loop of progressbar in api/test. (#878)
[Enhance] RepVGG for YOLOX-PAI. (#1025)
[Enhancement] Update VAN. (#1017)
get_sinusoid_encodingfrom third-party implementation. (#965)
[Improve] Upgrade onnxsim to v0.4.0. (#915)
[Improve] Fixed typo in
forwardin PreciseBNHook (#964)
forward_dummyto calculate FLOPS. (#953)
Fix warning with
Add matplotlib minimum version requriments. (#909)
val loader should not drop last by default. (#857)
Fix config.device bug in toturial. (#1059)
Fix attenstion clamp max params (#1034)
Fix device mismatch in Swin-v2. (#976)
Fix the output position of Swin-Transformer. (#947)
Support MPS device. (#894)
Fix a bug in Albu which caused crashing. (#918)
Dedicated MMClsWandbHook for MMClassification (Weights and Biases Integration) (#764)
Use mdformat instead of markdownlint to format markdown. (#844)
Support training on IPU and add fine-tuning configs of ViT. (#723)
Support a series of CSP Network, such as CSP-ResNet, CSP-ResNeXt and CSP-DarkNet.
CustomDatasetclass to help you build dataset of yourself!
Support ConvMixer, RepMLP and new dataset - CUB dataset.
[Feature] Add CSPNet and backbone and checkpoints (#735)
[Feature] Add diff seeds to diff ranks. (#744)
[Feature] Support ConvMixer. (#716)
dist_testtools support distributed training on multiple machines. (#734)
[Feature] Add RepMLP backbone and checkpoints. (#709)
[Feature] Support CUB dataset. (#703)
[Feature] Support ResizeMix. (#676)
[Fix] Fix the discontiguous output feature map of ConvNeXt. (#743)
Support ResNetV1c and Wide-ResNet, and provide pre-trained models.
Support dynamic input shape for ViT-based algorithms. Now our ViT, DeiT, Swin-Transformer and T2T-ViT support forwarding with any input shape.
Reproduce training results of DeiT. And our DeiT-T and DeiT-S have higher accuracy comparing with the official weights.
Reproduce training results of DeiT. (#711)
Add ConvNeXt pretrain models on ImageNet-1k. (#707)
Support dynamic input shape for ViT-based algorithms. (#706)
evaluatefunction for ConcatDataset. (#650)
Enhance vis-pipeline tool. (#604)
Return code 1 if scripts runs failed. (#694)
Use PyTorch official
Add a new pre-commit-hook to automatically add a copyright. (#710)
Add deprecation message for deploy tools. (#697)
Upgrade isort pre-commit hooks. (#687)
--gpu-idsin non-distributed multi-gpu training/testing. (#688)
Remove deprecation. (#633)
Fix the MMCV dependency version.
Support K-fold cross-validation. The tutorial will be released later.
Support HRNet, ConvNeXt, Twins and EfficientNet.
Support model conversion from PyTorch to Core-ML by a tool.
Support K-fold cross-validation. (#563)
Support HRNet and add pre-trained models. (#660)
Support ConvNeXt and add pre-trained models. (#670)
Support Twins and add pre-trained models. (#642)
Support EfficientNet and add pre-trained models.(#649)
Add conversion script from pytorch to Core-ML model. (#597)
New-style CPU training and inference. (#674)
Add setup multi-processing both in train and test. (#671)
Rewrite channel split operation in ShufflenetV2. (#632)
Deprecate the support for “python setup.py test”. (#646)
Support single-label, softmax, custom eps by asymmetric loss. (#609)
Save class names in best checkpoint created by evaluation hook. (#641)
The feature extraction function has been enhanced. See #593 for more details.
Provide the high-acc ResNet-50 training settings from ResNet strikes back.
Reproduce the training accuracy of T2T-ViT & RegNetX, and provide self-training checkpoints.
Support DeiT & Conformer backbone and checkpoints.
Support Precise BN. (#401)
Add CAM visualization tool. (#577)
Repeated Aug and Sampler Registry. (#588)
Add DeiT backbone and checkpoints. (#576)
Support LAMB optimizer. (#591)
Implement the conformer backbone. (#494)
Add the frozen function for Swin Transformer model. (#574)
Support using checkpoint in Swin Transformer to save memory. (#557)
[Reproduction] Reproduce RegNetX training accuracy. (#587)
[Reproduction] Reproduce training results of T2T-ViT. (#610)
[Enhance] Provide high-acc training settings of ResNet. (#572)
[Enhance] Set a random seed when the user does not set a seed. (#554)
NumClassCheckHookand unit tests. (#559)
[Enhance] Enhance feature extraction function. (#593)
[Enhance] Improve efficiency of precision, recall, f1_score and support. (#595)
[Enhance] Improve accuracy calculation performance. (#592)
[Refactor] Use new API of matplotlib to handle blocking input in visualization. (#568)
[CI] Cancel previous runs that are not completed. (#583)
[CI] Skip build CI if only configs or docs modification. (#575)
Support MLP-Mixer backbone and provide pre-trained checkpoints.
Add a tool to visualize the learning rate curve of the training phase. Welcome to use with the tutorial!
Use CircleCI to do unit tests. (#567)
Focal loss for single label tasks. (#548)
Rename config files according to the config name standard. (#508)
reset_classifierto remove head of timm backbones. (#534)
Support passing arguments to loss from head. (#523)
Resizetransform and add
Update mmcv dependency version. (#509)
Fix bug when using
Fix a bug when using iter-based runner with ‘val’ workflow. (#542)
Fix interpolation method checking in
Fix a bug when load checkpoints in mulit-GPUs environment. (#527)
Fix an error on indexing scalar metrics in
Fix wrong condition judgment in
analyze_logs.pyand prevent empty curve. (#510)
Fix vit config and model broken links. (#564)
Add abstract and image for every paper. (#546)
Add mmflow and mim in banner and readme. (#543)
Add schedule and runtime tutorial docs. (#499)
Add the top-5 acc in ResNet-CIFAR README. (#531)
Fix TOC of
visualization.mdand add example images. (#513)
Use docs link of other projects and add MMCV docs. (#511)
Support Tokens-to-Token ViT backbone and Res2Net backbone. Welcome to use!
Support ImageNet21k dataset.
Add a pipeline visualization tool. Try it with the tutorials!
Add Tokens-to-Token ViT backbone and converted checkpoints. (#467)
Add Res2Net backbone and converted weights. (#465)
Support ImageNet21k dataset. (#461)
Support seesaw loss. (#500)
Add a pipeline visualization tool. (#406)
Add a tool to find broken files. (#482)
Add a tool to test TorchServe. (#468)
We have improved compatibility with downstream repositories like MMDetection and MMSegmentation. We will add some examples about how to use our backbones in MMDetection.
Add RepVGG backbone and checkpoints. Welcome to use it!
Add timm backbones wrapper, now you can simply use backbones of pytorch-image-models in MMClassification!
Fix TnT compatibility and verbose warning. (#436)
Add datetime info and saving model using torch<1.6 format. (#439)
Improve downstream repositories compatibility. (#421)
Rename the option
--cfg-optionsin some tools. (#425)
Add PyTorch 1.9 and Python 3.9 build workflow, and remove some CI. (#422)
RandAugmentto provide hyperparameters for sub-policies.
Support custom squeeze channels in
Support classwise weight in losses.
Better result visualization. (#419)
post_processfunction to handle pred result processing. (#390)
Avoid albumentations to install both opencv and opencv-headless. (#397)
Avoid unnecessary listdir when building ImageNet. (#396)
Use dynamic mmcv download link in TorchServe dockerfile. (#387)
Add transformer-in-transformer backbone and pretrain checkpoints, refers to the paper.
Add Chinese colab tutorial.
Provide dockerfile to build mmcls dev docker image.
Fix ImageNet dataset annotation file parse bug. (#370)
Fix docstring typo and init bug in ShuffleNetV1. (#374)
Use local ATTENTION registry to avoid conflict with other repositories. (#376)
Fix swin transformer config bug. (#355)
patch_cfgargument bug in SwinTransformer. (#368)
init_weightscall in ViT init function. (#373)
_base_link in a resnet config. (#361)
Fix vgg-19 model link missing. (#363)
Support Swin-Transformer backbone and add training configs for Swin-Transformer on ImageNet.
Support Swin-Transformer backbone and add training configs for Swin-Transformer on ImageNet. (#271)
Add pretained model of RegNetX. (#269)
Support adding custom hooks in config file. (#305)
Improve and add Chinese translation of
CONTRIBUTING.mdand all tools tutorials. (#320)
Dump config before training. (#282)
Add torchscript and torchserve deployment tools. (#279, #284)
Improve test tools and add some new tools. (#322)
Correct MobilenetV3 backbone structure and add pretained models. (#291)
HybridEmbedas independent components. (#330)
Refactor mixup and cutmix as
Augmentsto support more functions. (#278)
Refactor weights initialization method. (#270, #318, #319)
LabelSmoothLossto support multiple calculation formulas. (#285)
Fix bug for CPU training. (#286)
Fix missing test data when
num_imgscan not be evenly divided by
Fix build compatible with pytorch v1.3-1.5. (#301)
Fix bug when
samples_per_gpuis 1. (#311)
Finish adding Chinese tutorials and build Chinese documentation on readthedocs.
Update ResNeXt checkpoints and ResNet checkpoints on CIFAR.
Improve and add Chinese translation of
Build Chinese translation on readthedocs. (#267)
Add an argument efficientnet_style to
Only allow directory operation when rank==0 when testing. (#258)
Fix typo in
Update ResNeXt checkpoints. (#283)
data.testin MNIST configs. (#264)
Download CIFAR/MNIST dataset only on rank 0. (#273)
Fix MMCV version compatibility. (#276)
Fix CIFAR color channels bug and update checkpoints in model zoo. (#280)
new_dataset.mdand add Chinese translation of
Add random noise to
new_dataset.mdand add Chinese translation of
Refactor arguments passing for Heads. (#239)
Allow more flexible
Inherits MMCV registry so that in the future OpenMMLab repos like MMDet and MMSeg could directly use the backbones supported in MMCls. (#252)
Fix typo in
Fix typo in unittests. (#238)
Check if specified tmpdir exists when testing to avoid deleting existing data. (#242 & #258)
Add missing config files in
MANIFEST.in. (#250 & #255)
Use temporary directory under shared directory to collect results to avoid unavailability of temporary directory for multi-node testing. (#251)
Support cutmix trick.
Support random augmentation.
tools/deployment/test.pyas a ONNX runtime test tool.
Support ViT backbone and add training configs for ViT on ImageNet.
README.mdand some Chinese tutorials.
Support cutmix trick. (#198)
Support random augmentation. (#201)
Add config and checkpoint for training ResNet on CIFAR-100. (#208)
tools/deployment/test.pyas a ONNX runtime test tool. (#212)
Support ViT backbone and add training configs for ViT on ImageNet. (#214)
Add finetuning configs for ViT on ImageNet. (#217)
deviceoption to support training on CPU. (#219)
README.mdand some Chinese tutorials. (#221)
metafile.ymlin configs to support interaction with paper with code(PWC) and MMCLI. (#225)
Upload configs and converted checkpoints for ViT fintuning on ImageNet. (#230)
LabelSmoothLossso that label smoothing and mixup could be enabled at the same time. (#203)
CLASSESin checkpoint to avoid unexpected key error. (#207)
Check mmcv version when importing mmcls to ensure compatibility. (#209)
CONTRIBUTING.mdto align with that in MMCV. (#210)
Change tags to html comments in configs README.md. (#226)
Clean codes in ViT backbone. (#227)
setup.pyto support MMCLI. (#232)
cutmix_probin ViT configs. (#220)
Fix backend for resize in ResNeXt configs. (#222)
Add tutorials for installation and usage.
Rotatepipeline for data augmentation. (#167)
Invertpipeline for data augmentation. (#168)
Colorpipeline for data augmentation. (#171)
Posterizepipeline for data augmentation. (#172)
Support fp16 training. (#178)
Add tutorials for installation and basic usage of MMClassification.(#176)
Sharpnesspipelines for data augmentation. (#179)
Support dynamic shape export to onnx. (#175)
Release training configs and update model zoo for fp16 (#184)
Use MMCV’s EvalHook in MMClassification (#182)
Fix wrong naming in vgg config (#181)
Implement mixup trick.
Add a new tool to create TensorRT engine from ONNX, run inference and verify outputs in Python.
Implement mixup and provide configs of training ResNet50 using mixup. (#160)
Shearpipeline for data augmentation. (#163)
Translatepipeline for data augmentation. (#165)
tools/onnx2tensorrt.pyas a tool to create TensorRT engine from ONNX, run inference and verify outputs in Python. (#153)
tools/test.pyto support eval options override, matching the behavior of other open-mmlab projects. (#158)
Support showing and saving painted results in
tools/test.py, matching the behavior of other open-mmlab projects. (#162)
Fix configs for VGG, replace checkpoints converted from other repos with the ones trained by ourselves and upload the missing logs in the model zoo. (#161)
Support multi-label task.
Support more flexible metrics settings.
Add evaluation metrics: mAP, CP, CR, CF1, OP, OR, OF1 for multi-label task. (#123)
Add BCE loss for multi-label task. (#130)
Add focal loss for multi-label task. (#131)
Support PASCAL VOC 2007 dataset for multi-label task. (#134)
Add asymmetric loss for multi-label task. (#132)
Add analyze_results.py to select images for success/fail demonstration. (#142)
Support new metric that calculates the total number of occurrences of each label. (#143)
Support class-wise evaluation results. (#143)
Add thresholds in eval_metrics. (#146)
Add heads and a baseline config for multilabel task. (#145)
Remove the models with 0 checkpoint and ignore the repeated papers when counting papers to gain more accurate model statistics. (#135)
Add tags in README.md. (#137)
Fix optional issues in docstring. (#138)
Update stat.py to classify papers. (#139)
Fix mismatched columns in README.md. (#150)
Fix test.py to support more evaluation metrics. (#155)
Fix bug in VGG weight_init. (#140)
Fix bug in 2 ResNet configs in which outdated heads were used. (#147)
Fix bug of misordered height and width in
Collect. (#149 & #152)
Add more evaluation metrics.
Remove installation of MMCV from requirements. (#90)
Add 3 evaluation metrics: precision, recall and F-1 score. (#93)
Allow config override during testing and inference with
--options. (#91 & #96)
build_runnerto make runners more flexible. (#54)
Support to get category ids in
Allow input image as ndarray during inference. (#87)
Optimize MNIST config. (#98)
Add config links in model zoo documentation. (#99)
Use functions from MMCV to collect environment. (#103)
Refactor config files so that they are now categorized by methods. (#116)
Add README in config directory. (#117)
Add model statistics. (#119)
Refactor documentation in consistency with other MM repositories. (#126)
CLASSESargument to dataset wrappers. (#66)
Fix slurm evaluation error during training. (#69)
Resolve error caused by shape in
Fix bug caused by extremely insufficient data in distributed sampler.(#108)
Fix bug in
gpu_idsin distributed training. (#107)
Fix bug caused by extremely insufficient data in collect results during testing (#114)
Support new method: ResNeSt and VGG.
Support new dataset: CIFAR10.
Provide new tools to do model inference, model conversion from pytorch to onnx.
Add model inference. (#16)
Add pytorch2onnx. (#20)
Add PIL backend for transform
Add ResNeSt. (#25)
Add VGG and its pretained models. (#27)
Add CIFAR10 configs and models. (#38)
Add albumentations transforms. (#45)
Visualize results on image demo. (#58)
Replace urlretrieve with urlopen in dataset.utils. (#13)
Resize image according to its short edge. (#22)
Update ShuffleNet config. (#31)
Update pre-trained models for shufflenet_v2, shufflenet_v1, se-resnet50, se-resnet101. (#33)
Fix init_weights in
Fix the parameter
sizein test_pipeline. (#30)
Fix the parameter in cosine lr schedule. (#32)
Fix the convert tools for mobilenet_v2. (#34)
Fix crash in CenterCrop transform when image is greyscale (#40)
Fix outdated configs. (#53)