plsc


Nameplsc JSON
Version 2.4.0 PyPI version JSON
download
home_pagehttps://github.com/PaddlePaddle/PLSC
SummaryPLSC 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.
upload_time2023-01-17 11:43:06
maintainer
docs_urlNone
authorPLSC Contributors
requires_python
license
keywords face-recognition vision-classification large-scale distributed-training data-parallel model-parallel resnet vit face-vit deit partial-fc arcface
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
  <img src="./plsc-logo.png" align="middle"  width="500" />
</p>

------------------------------------------------------------------------------------------

<p align="center">
    <a href="./LICENSE"><img src="https://img.shields.io/badge/license-Apache%202-dfd.svg"></a>
    <a href="https://github.com/PaddlePaddle/PLSC/releases"><img src="https://img.shields.io/github/v/release/PaddlePaddle/PLSC?color=ffa"></a>
    <a href=""><img src="https://img.shields.io/badge/python-3.7+-aff.svg"></a>
    <a href="https://github.com/PaddlePaddle/PLSC/graphs/contributors"><img src="https://img.shields.io/github/contributors/PaddlePaddle/PLSC?color=9ea"></a>
    <a href="https://github.com/PaddlePaddle/PLSC/issues"><img src="https://img.shields.io/github/issues/PaddlePaddle/PLSC?color=9cc"></a>
    <a href="https://github.com/PaddlePaddle/PLSC/stargazers"><img src="https://img.shields.io/github/stars/PaddlePaddle/PLSC?color=ccf"></a>
</p>

## Introduction

[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.

## Available Models
* [Face Recognition](./task/recognition/face/)
* [ViT](./task/classification/vit/)
* [DeiT](./task/classification/deit/)
* [CaiT](./task/classification/cait/)
* [MoCo v3](./task/ssl/mocov3/)
* [MAE](./task/ssl/mae/)

## Top News 🔥

**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.

**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.

**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.

**Update (2021-12-11):** Released [Zhihu Technical Artical](https://zhuanlan.zhihu.com/p/443091282) and [Bilibili Open Class](https://www.bilibili.com/video/BV1VP4y1G73X)

**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.

**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.


## Installation

PLSC 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.

**Note**: As the PaddlePaddle version continues to iterate, PLSC v2.4 adapts to PaddlePaddle v2.4, and there may be API mismatches in higher versions of PaddlePaddle.

### Install plsc as a third-party library

```shell
pip install plsc==2.4
```

### Install plsc locally

```shell
git clone https://github.com/PaddlePaddle/PLSC.git
cd /path/to/PLSC/

git checkout -b release/2.4 remotes/origin/release/2.4

# [optional] pip install -r requirements.txt
python setup.py develop
```

See [Installation instructions](./tutorials/get_started/installation.md).


## Getting Started

See [Quick Run Recognition](./tutorials/get_started/quick_run_recognition.md) for the basic usage of PLSC.

## Tutorials

* [Configuration](./tutorials/basic/config.md)

See more [tutorials](./tutorials/README.md).

## Documentation

* [Data Augmentation](./docs/data_augmentation.md)

See [documentation](./docs/README.md) for the usage of more APIs or modules.


## License

This project is released under the [Apache 2.0 license](./LICENSE).

## Citation

```
@misc{plsc,
    title={PLSC: An Easy-to-use and High-Performance Large Scale Classification Tool},
    author={PLSC Contributors},
    howpublished = {\url{https://github.com/PaddlePaddle/PLSC}},
    year={2022}
}
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/PaddlePaddle/PLSC",
    "name": "plsc",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "face-recognition,vision-classification,large-scale,distributed-training,data-parallel,model-parallel,resnet,vit,face-vit,deit,partial-fc,arcface",
    "author": "PLSC Contributors",
    "author_email": "",
    "download_url": "https://github.com/PaddlePaddle/PLSC.git",
    "platform": null,
    "description": "<p align=\"center\">\n  <img src=\"./plsc-logo.png\" align=\"middle\"  width=\"500\" />\n</p>\n\n------------------------------------------------------------------------------------------\n\n<p align=\"center\">\n    <a href=\"./LICENSE\"><img src=\"https://img.shields.io/badge/license-Apache%202-dfd.svg\"></a>\n    <a href=\"https://github.com/PaddlePaddle/PLSC/releases\"><img src=\"https://img.shields.io/github/v/release/PaddlePaddle/PLSC?color=ffa\"></a>\n    <a href=\"\"><img src=\"https://img.shields.io/badge/python-3.7+-aff.svg\"></a>\n    <a href=\"https://github.com/PaddlePaddle/PLSC/graphs/contributors\"><img src=\"https://img.shields.io/github/contributors/PaddlePaddle/PLSC?color=9ea\"></a>\n    <a href=\"https://github.com/PaddlePaddle/PLSC/issues\"><img src=\"https://img.shields.io/github/issues/PaddlePaddle/PLSC?color=9cc\"></a>\n    <a href=\"https://github.com/PaddlePaddle/PLSC/stargazers\"><img src=\"https://img.shields.io/github/stars/PaddlePaddle/PLSC?color=ccf\"></a>\n</p>\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* [DeiT](./task/classification/deit/)\n* [CaiT](./task/classification/cait/)\n* [MoCo v3](./task/ssl/mocov3/)\n* [MAE](./task/ssl/mae/)\n\n## Top News \ud83d\udd25\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**: As the PaddlePaddle version continues to iterate, PLSC v2.4 adapts to PaddlePaddle v2.4, and there may be API mismatches in higher versions of PaddlePaddle.\n\n### Install plsc as a third-party library\n\n```shell\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\ngit checkout -b release/2.4 remotes/origin/release/2.4\n\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",
    "bugtrack_url": null,
    "license": "",
    "summary": "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.",
    "version": "2.4.0",
    "split_keywords": [
        "face-recognition",
        "vision-classification",
        "large-scale",
        "distributed-training",
        "data-parallel",
        "model-parallel",
        "resnet",
        "vit",
        "face-vit",
        "deit",
        "partial-fc",
        "arcface"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f6f056c224a4b4facf1bd87ef75d3480569ec7d3f657da0be6f4d760b2295670",
                "md5": "c7196781b0086f35f36906e5c9a6c07e",
                "sha256": "da40f46b18ecb6c8f96e4bedb02840d645db5568e168941f9841a0774b7b135f"
            },
            "downloads": -1,
            "filename": "plsc-2.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c7196781b0086f35f36906e5c9a6c07e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 130317,
            "upload_time": "2023-01-17T11:43:06",
            "upload_time_iso_8601": "2023-01-17T11:43:06.289276Z",
            "url": "https://files.pythonhosted.org/packages/f6/f0/56c224a4b4facf1bd87ef75d3480569ec7d3f657da0be6f4d760b2295670/plsc-2.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-17 11:43:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "PaddlePaddle",
    "github_project": "PLSC",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "plsc"
}
        
Elapsed time: 0.02960s