PLSC
PLSC copied to clipboard
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.
AMP 支持哪些算子,不支持哪些算子,目前有什么限制?
采用PLSC训练的模型,将其export为paddle模型,采用paddle2onnx生成ONNX模型,采用同一张图片,经过相同操作,模型输出小数点前三位结果是一致的,后面的结果就不同了,不晓得是个啥情况呀? 如下: paddle:-0.010201 -0.006735 -0.003081 0.029121 onnx: -0.010158 -0.006712 -0.003114 0.029161
# 概述 在 Windows 平台和 Linux 平台分别部署了PLSC运行环境,由于按照 README 文件中的安装提示,使用源码编译安装Paddle失败数次,所以后来使用的pip安装的PaddlePaddle-gpu环境(两个平台都是GPU环境),在下载了预训练模型后,使用测试图片进行预测,结果如图所示: 显然错误率很高,只有Rachel识别正确 > 预训练模型的下载和预测代码的执行均按照README文件指示,除部分文件路径外,未修改任何代码  # 环境 1. Windows 10 + Quadro P1000 + Cuda 10.1 2. CentOS 7 64 bit +...
分类数目变大,虽然可以将分类层参数拆分到各个GPU上,但是各个GPU上的隐层特征allgather也带来显存消耗。随着分类层数目变多,虽然可以通过增加GPU数量来保证fc层参数分配到各个GPU上的显存是一个常数,但是隐层特征x,还是会随着GPU数增加而增加。单卡显存有限,这样也限制仅仅通过增加GPU数量来应对分类数量线性增长。这个问题在论文“Partial FC: training 10 million identities on a single machine”提出。
https://github.com/PaddlePaddle/PLSC/blob/bd3f2ee722d692d5e3338ed59502801fa3081ed1/dynamic/classifiers/lsc.py#L119 用到的 class_center_sample 在 paddle v2.0.2 的分支上是没有的。 https://github.com/PaddlePaddle/PLSC/blob/bd3f2ee722d692d5e3338ed59502801fa3081ed1/requirement.txt#L1 提到的版本是2.0.2
hi, i want to modify the entry module of PLSC to replace the static graph format by dynamic graph. But i don't know how to assign the gpu device to...