cavaface
cavaface copied to clipboard
face recognition training project(pytorch)
cavaface: A Pytorch Training Framework for Deep Face Recognition
By Yaobin Li and Liying Chi
Introduction
This repo provides a high-performance distribute parallel training framework for face recognition with pytorch, including various backbones (e.g., ResNet, IR, IR-SE, ResNeXt, AttentionNet-IR-SE, ResNeSt, HRNet, etc.), various losses (e.g., Softmax, Focal, SphereFace, CosFace, AmSoftmax, ArcFace, ArcNegFace, CurricularFace, Li-Arcface, QAMFace, etc.), various data augmentation(e.g., RandomErasing, Mixup, RandAugment, Cutout, CutMix, etc.) and bags of tricks for improving performance (e.g., FP16 training(apex), Label smooth, LR warmup, etc)
Features
(click to collapse)
-
Backbone
- [x] ResNet(IR-SE)
- [x] ResNeXt
- [x] DenseNet
- [x] MobileFaceNet
- [x] MobileNetV3
- [x] EfficientNet
- [x] ProxylessNas
- [x] GhostNet
- [x] AttentionNet-IRSE
- [x] ResNeSt
- [x] ReXNet
- [x] MobileNetV2
- [x] MobileNeXt
-
Attention Module
- [x] SE
- [x] CBAM
- [x] ECA
- [x] GCT
-
Loss
- [x] Softmax
- [x] SphereFace
- [x] AMSoftmax
- [x] CosFace
- [x] ArcFace
- [x] Combined Loss
- [x] AdaCos
- [x] SV-X-Softmax
- [x] CurricularFace
- [x] ArcNegFace
- [x] Li-Arcface
- [x] QAMFace
- [x] Circle Loss
-
Parallel Training
- [x] DDP
- [x] Model Parallel
-
Automatic Mixed Precision
- [x] AMP
- Optimizer
-
[Data Augmentation
- [x] RandomErasing
- [x] Mixup
- [x] RandAugment
- [x] Cutout
- [x] CutMix
- [x] Colorjitter
-
Distillation
- [ ] KnowledgeDistillation
- [ ] Multi Feature KD
-
Bag of Tricks
- [x] Label smooth
- [x] LR warmup
Installation
See INSTALL.md.
Quick start
See GETTING_STARTED.md.
Model Zoo and Benchmark
See MODEL_ZOO.md.
License
cavaface is released under the MIT license.
Acknowledgement
- This repo is modified and adapted on these great repositories face.evoLVe.PyTorch, CurricularFace, insightface and imgclsmob
- The evaluation tools is developed by Charrin
Contact
[email protected]