机器之心报道
作者:泽南
高度模块化和可扩展的设计是 FaceX-Zoo 的优势。
近年来,基于深度学习的人脸识别技术取得了重要进展。但是人脸识别模型的实际部署和深入研究都需要相应的公众支持。例如生产级人脸表示网络需要模块化的训练机制,以配合不同 SOTA 骨干网络、训练监督主题再到现实世界人脸识别需求。至于性能分析和比较,基于多个基准的大量模型也需要一个标准和自动化的评估工具。此外,人们希望能够出现一种以整体流水线形式部署的人脸识别公共基础。
最近还出现了一系列新的挑战,例如疫情期间出现的戴口罩人脸识别需求,这在实际应用中引来了人们的关注。一个可行的解决方式是建立起一套易用的统一框架来解决这些问题。
今年 1 月,来自京东的研究人员面向人脸识别技术开发社区提出了全新的开源框架 FaceX-Zoo。依靠高度模块化和可扩展的设计,FaceX-Zoo 提供具备多种多种 supervisory head 和骨干网络的训练模块,以实现效果最优的人脸识别。此外,它还具备标准化评估模块,以便在大多数情况下测试模型效果。
在这个工具中,人们只需改动简单的配置就可以在大多数流行基准上进行模型测试。此外,它还有一个简单但功能齐全的人脸 SDK 用于验证训练后的模型,并进行初步应用。该工具并不包含大量现有技术,但也因此易于拓展升级。
最近,这一工具已被开源。
GitHub 链接:https://github.com/JDAI-CV/FaceX-Zoo
该工具的环境需求如下:
- python >= 3.7.1
- pytorch >= 1.1.0
- torchvision >= 0.3.0
FaceX-Zoo 提供了 MobileFaceNet、ResNet、 SE-ResNet、HRNet、EfficientNet 等较为流行的骨干网络以方便提取面部特征。如果这还无法满足你的需要,只要修改配置文件、添加架构定义文件,在 PyTorch 的支持下你就可以轻松自定义任何其他选择。
使用 FaceX-Zoo 中 FMA-3D 工具为照片中的人物戴上口罩,填充蒙面人脸数据集。
不同骨干网络的性能评估。
不同 supervisory head 的性能评估。
京东的开发者们表示,在未来研究人员还计划进一步增加 FaceX-Zoo 的模块数量,如面部分析和 face lightning,补充骨干网络架构和 supervisory head 数量,并尝试通过分布式数据并行技术和混合精度训练来提升模型训练的效率。
相关论文:https://arxiv.org/abs/2101.04407