Apache License 2.0

项目介绍

PaddlePaddle/PLSC 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 Apache License 2.0 许可证,目前获得 155 个 Star、34 次 Fork。

仓库全名
PaddlePaddle/PLSC
开源许可证
Apache License 2.0
Star 数
155
Fork 数
34
未关闭 Issue
19

README 摘要

Introduction 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 ViT Swin DeiT CaiT ConvNeXt MoCo v3 CAE MAE ConvMAE ToMe Top News 🔥 Update (2023-01-11): PLSC v2.4 is released, we refactored the entire repository based on task types. This…

完整内容见 GitHub 原始 README 或本页 。

常见问题

PLSC 用什么语言开发?

主要使用 Python 编写,采用 Apache License 2.0 许可证,目前有 155 个 Star。

PLSC 可以免费商用吗?

仓库采用 Apache License 2.0 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 PLSC 的源码?

可以直接克隆仓库:git clone https://github.com/PaddlePaddle/PLSC.git,默认分支为 master;安装与运行步骤见仓库 README。

PLSC 最近还在维护吗?

仓库最近一次更新为 2023年6月6日,当前有 19 个未关闭 Issue;Star 数为 155,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

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.

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

语言占比

Jupyter Notebook
Python
Shell

Release

README


Introduction

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

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, CaiT, MoCo v3, MAE. 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, DeiT. 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 and Bilibili Open Class

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, SparseMomentum, and ArcFace, CosFace (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: 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.

Install plsc as a third-party library

pip install git+https://github.com/PaddlePaddle/PLSC@master

For stable development, you can install a previous version of plsc.

pip install plsc==2.4

Install plsc locally

git clone https://github.com/PaddlePaddle/PLSC.git
cd /path/to/PLSC/
# [optional] pip install -r requirements.txt
python setup.py develop

See Installation instructions.

Getting Started

See Quick Run Recognition for the basic usage of PLSC.

Tutorials

See more tutorials.

Documentation

See documentation for the usage of more APIs or modules.

License

This project is released under the Apache 2.0 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}
}

评论

暂无评论