Distributed Arcface Training in Pytorch
This is a deep learning library that makes face recognition efficient, and effective, which can train tens of millions identity on a single server.
Requirements
- Install pytorch (torch>=1.6.0), our doc for install.md.
pip install -r requirements.txt
.- Download the dataset from https://github.com/deepinsight/insightface/tree/master/recognition/datasets .
How to Training
To train a model, run train.py
with the path to the configs:
python train.py configs/webface_mbf
Model Zoo
inference
python3 inference_compare.py --img1 input/sajjad_0.jpg --img2 input/sajjad_1.jpg
Test
We tested many versions of PyTorch. Please create an issue if you are having trouble.
- torch 1.6.0
- torch 1.7.1
- torch 1.8.0
- torch 1.9.0
Citation
@inproceedings{deng2019arcface,
title={Arcface: Additive angular margin loss for deep face recognition},
author={Deng, Jiankang and Guo, Jia and Xue, Niannan and Zafeiriou, Stefanos},
booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
pages={4690--4699},
year={2019}
}
@inproceedings{an2020partical_fc,
title={Partial FC: Training 10 Million Identities on a Single Machine},
author={An, Xiang and Zhu, Xuhan and Xiao, Yang and Wu, Lan and Zhang, Ming and Gao, Yuan and Qin, Bin and
Zhang, Debing and Fu Ying},
booktitle={Arxiv 2010.05222},
year={2020}
}