{"id":18524942,"url":"https://github.com/paddlepaddle/plsc","last_synced_at":"2026-03-05T01:31:12.339Z","repository":{"id":43466915,"uuid":"227880026","full_name":"PaddlePaddle/PLSC","owner":"PaddlePaddle","description":"Paddle Large Scale Classification Tools，supports ArcFace, CosFace, PartialFC, Data Parallel + Model Parallel. Model includes ResNet, ViT, Swin, DeiT, CaiT, FaceViT, MoCo, MAE, ConvMAE, CAE.","archived":false,"fork":false,"pushed_at":"2023-06-06T11:13:52.000Z","size":3038,"stargazers_count":144,"open_issues_count":22,"forks_count":32,"subscribers_count":21,"default_branch":"master","last_synced_at":"2024-04-26T16:21:25.474Z","etag":null,"topics":["arcface","cait","convmae","cosface","data-parallel","deit","distributed-training","face-recognition","facevit","hight-speed","large-scale","mae","moco-v3","model-parallel","paddle","paddlepaddle","partial-fc","resnet","swin-transformer","vit"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaddlePaddle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-12-13T16:30:59.000Z","updated_at":"2024-03-24T14:41:48.000Z","dependencies_parsed_at":"2022-08-12T10:41:35.843Z","dependency_job_id":"819a5afd-2818-4da0-90dd-1590b29952e8","html_url":"https://github.com/PaddlePaddle/PLSC","commit_stats":{"total_commits":150,"total_committers":11,"mean_commits":"13.636363636363637","dds":0.4733333333333334,"last_synced_commit":"b365cf83491d234e12438a681878b8341726ec29"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaddlePaddle%2FPLSC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaddlePaddle%2FPLSC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaddlePaddle%2FPLSC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaddlePaddle%2FPLSC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaddlePaddle","download_url":"https://codeload.github.com/PaddlePaddle/PLSC/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247767236,"owners_count":20992548,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arcface","cait","convmae","cosface","data-parallel","deit","distributed-training","face-recognition","facevit","hight-speed","large-scale","mae","moco-v3","model-parallel","paddle","paddlepaddle","partial-fc","resnet","swin-transformer","vit"],"created_at":"2024-11-06T17:43:51.972Z","updated_at":"2026-03-05T01:31:12.278Z","avatar_url":"https://github.com/PaddlePaddle.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./plsc-logo.png?raw=true\" align=\"middle\"  width=\"500\" /\u003e\n\u003c/p\u003e\n\n------------------------------------------------------------------------------------------\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"./LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-Apache%202-dfd.svg\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/PaddlePaddle/PLSC/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/PaddlePaddle/PLSC?color=ffa\"\u003e\u003c/a\u003e\n    \u003ca href=\"\"\u003e\u003cimg src=\"https://img.shields.io/badge/python-3.7+-aff.svg\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/PaddlePaddle/PLSC/graphs/contributors\"\u003e\u003cimg src=\"https://img.shields.io/github/contributors/PaddlePaddle/PLSC?color=9ea\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/PaddlePaddle/PLSC/issues\"\u003e\u003cimg src=\"https://img.shields.io/github/issues/PaddlePaddle/PLSC?color=9cc\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/PaddlePaddle/PLSC/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/PaddlePaddle/PLSC?color=ccf\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## Introduction\n\n[PLSC](https://github.com/PaddlePaddle/PLSC) is an open source repo for a collection of Paddle Large Scale Classification Tools, which supports large-scale classification model pre-training as well as finetune for downstream tasks.\n\n## Available Models\n* [Face Recognition](./task/recognition/face/)\n* [ViT](./task/classification/vit/)\n* [Swin](./task/classification/swin/)\n* [DeiT](./task/classification/deit/)\n* [CaiT](./task/classification/cait/)\n* [ConvNeXt](./task/classification/convnext)\n* [MoCo v3](./task/ssl/mocov3/)\n* [CAE](./task/ssl/cae/)\n* [MAE](./task/ssl/mae/)\n* [ConvMAE](./task/ssl/mae/)\n* [ToMe](./task/accelerate/tome)\n\n## Top News 🔥\n\n**Update (2023-01-11):** PLSC v2.4 is released, we refactored the entire repository based on task types. This repository has been adapted to PaddlePaddle release 2.4. In terms of models, we have added 4 new ones, including [FaceViT](https://arxiv.org/abs/2203.15565), [CaiT](https://arxiv.org/abs/2103.17239), [MoCo v3](https://arxiv.org/abs/2104.02057), [MAE](https://arxiv.org/abs/2111.06377). At present, each model in the repository can be trained from scratch to achieve the original official accuracy, especially the training of ViT-Large on the ImageNet21K dataset. In addition, we also provide a method for ImageNet21K data preprocessing. In terms of AMP training, PLSC uses FP16 O2 training by default, which can speed up training while maintaining accuracy.\n\n**Update (2022-07-18):** PLSC v2.3 is released, a new upgrade, more modular and highly extensible. Support more tasks, such as [ViT](https://arxiv.org/abs/2010.11929), [DeiT](https://arxiv.org/abs/2012.12877). The `static` graph mode will no longer be maintained as of this release.\n\n**Update (2022-01-11):** Supported NHWC data format of FP16 to improve 10% throughtput and decreased 30% GPU memory. It supported 92 million classes on single node 8 NVIDIA V100 (32G) and has high training throughtput. Supported best checkpoint save. And we released 18 pretrained models and PLSC v2.2.\n\n**Update (2021-12-11):** Released [Zhihu Technical Artical](https://zhuanlan.zhihu.com/p/443091282) and [Bilibili Open Class](https://www.bilibili.com/video/BV1VP4y1G73X)\n\n**Update (2021-10-10):** Added FP16 training, improved throughtput and optimized GPU memory. It supported 60 million classes on single node 8 NVIDIA V100 (32G) and has high training throughtput.\n\n**Update (2021-09-10):** This repository supported both `static` mode and `dynamic` mode to use paddlepaddle v2.2, which supported 48 million classes on single node 8 NVIDIA V100 (32G). It added [PartialFC](https://arxiv.org/abs/2010.05222), SparseMomentum, and [ArcFace](https://arxiv.org/abs/1801.07698), [CosFace](https://arxiv.org/abs/1801.09414) (we refer to MarginLoss). Backbone includes IResNet and MobileNet.\n\n\n## Installation\n\nPLSC provides two usage methods: one is as an external third-party library, and users can use `import plsc` in their own projects; the other is to develop and use it locally based on this repository.\n\n**Note**: With the continuous iteration of the PaddlePaddle version, the PLSC `master` branch adapts to the PaddlePaddle `develop` branch, and API mismatches may occur in lower versions of PaddlePaddle.\n\n### Install plsc as a third-party library\n\n```shell\npip install git+https://github.com/PaddlePaddle/PLSC@master\n```\n\nFor stable development, you can install a previous version of plsc.\n\n```\npip install plsc==2.4\n```\n\n### Install plsc locally\n\n```shell\ngit clone https://github.com/PaddlePaddle/PLSC.git\ncd /path/to/PLSC/\n# [optional] pip install -r requirements.txt\npython setup.py develop\n```\n\nSee [Installation instructions](./tutorials/get_started/installation.md).\n\n\n## Getting Started\n\nSee [Quick Run Recognition](./tutorials/get_started/quick_run_recognition.md) for the basic usage of PLSC.\n\n## Tutorials\n\n* [Configuration](./tutorials/basic/config.md)\n\nSee more [tutorials](./tutorials/README.md).\n\n## Documentation\n\n* [Data Augmentation](./docs/data_augmentation.md)\n\nSee [documentation](./docs/README.md) for the usage of more APIs or modules.\n\n\n## License\n\nThis project is released under the [Apache 2.0 license](./LICENSE).\n\n## Citation\n\n```\n@misc{plsc,\n    title={PLSC: An Easy-to-use and High-Performance Large Scale Classification Tool},\n    author={PLSC Contributors},\n    howpublished = {\\url{https://github.com/PaddlePaddle/PLSC}},\n    year={2022}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaddlepaddle%2Fplsc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaddlepaddle%2Fplsc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaddlepaddle%2Fplsc/lists"}