[论文解读] Killing Two Birds with One Stone:Efficient and Robust Training of Face Recognition CNNs by Partial FC
该论文提出部分全连接层(PFC),一种稀疏更新的全连接层,每轮训练仅选择部分负类中心与正类中心来计算基于边距的Softmax损失。通过大幅降低计算成本、减少类间冲突以及减少尾部类别上的被动更新,PFC 实现了在大规模数据集(如 WebFace42M)上高效、鲁棒且准确的面部识别模型训练,实现 SOTA 准确率(IJB-C 上达 98.00%),训练速度最快提升 5 倍,GPU 显存使用量减少 50%。
Learning discriminative deep feature embeddings by using million-scale in-the-wild datasets and margin-based softmax loss is the current state-of-the-art approach for face recognition. However, the memory and computing cost of the Fully Connected (FC) layer linearly scales up to the number of identities in the training set. Besides, the large-scale training data inevitably suffers from inter-class conflict and long-tailed distribution. In this paper, we propose a sparsely updating variant of the FC layer, named Partial FC (PFC). In each iteration, positive class centers and a random subset of negative class centers are selected to compute the margin-based softmax loss. All class centers are still maintained throughout the whole training process, but only a subset is selected and updated in each iteration. Therefore, the computing requirement, the probability of inter-class conflict, and the frequency of passive update on tail class centers, are dramatically reduced. Extensive experiments across different training data and backbones (e.g. CNN and ViT) confirm the effectiveness, robustness and efficiency of the proposed PFC. The source code is available at \https://github.com/deepinsight/insightface/tree/master/recognition.
研究动机与目标
- 解决使用标准全连接(FC)层在百万数量级身份的深度面部识别模型训练中带来的高显存与高计算成本问题。
- 缓解大规模自动收集数据集(如 WebFace42M)中的类间冲突与标签噪声,这些因素会降低模型性能。
- 减少长尾分布中对低频尾部类别中心的被动更新频率。
- 实现在单张 GPU 上无需牺牲模型准确率的高效训练。
- 在显著降低训练成本的同时,实现在主要基准测试上的 SOTA 性能。
提出的方法
- PFC 在整个训练过程中保持完整的类别中心集合,但每次迭代仅对采样子集进行更新。
- 在每次前向传播中,基于真实标签选择正类中心,并随机选择负类中心子集用于损失计算。
- 仅在所选正类与负类中心上计算基于边距的 Softmax 损失,将计算复杂度从 O(N) 降低至 O(rN),其中 r 为采样比例。
- 完整类别中心集合被保留,仅对采样子集进行更新,从而确保模型稳定性和收敛性。
- 应用一种简单的在线异常类间过滤机制,进一步提升在标签噪声下的鲁棒性。
- 该方法兼容多种主干网络,包括 CNN 和视觉 Transformer(ViT)。
实验结果
研究问题
- RQ1稀疏更新的全连接层是否能在不降低性能的前提下降低大规模面部识别训练的成本?
- RQ2对负类中心进行部分采样在多大程度上影响模型对标签噪声和类间冲突的鲁棒性?
- RQ3PFC 在 WebFace42M 等大规模数据集上能将 GPU 显存使用量和训练时间降低多少?
- RQ4与现有采样方法或无全连接层方法相比,PFC 在长尾数据分布下的表现如何?
- RQ5PFC 是否能在实现单节点训练的同时,在 IJB-C 和 CFP-FP 等主要基准上实现 SOTA 准确率?
主要发现
- 在 WebFace42M 上使用 ResNet100 训练的 PFC-0.1 在 MFR-All 上达到 96.19% 的验证准确率,优于 FC 基线和其他采样方法。
- 使用 ResNet100 的 PFC-0.008 在 IJB-C 上达到 97.51% 的准确率,且 FC 计算成本近乎可忽略,展现出极高的效率。
- 在合成的 1000 万身份数据集上,PFC-0.1 的训练速度是 FC 基线的 5 倍,显存使用量不足其一半。
- 在长尾分布下,PFC-0.2 在 MFR-All 上达到 91.96% 的准确率,比 FC 基线高出 4.52%,比 DCQ 高出 2.59%。
- PFC-0.3 在 IJB-C 上达到 98.00% 的准确率,在 CFP-FP 上达到 99.51%,在多个基准上创下新的 SOTA 记录。
- 在 WebFace4M 上以 r=0.04 训练的 PFC 模型,在 IJB-B 上比 Virtual FC 高出 27.47%,在 IJB-C 上高出 25.33%,尽管 Virtual FC 将参数量减少了 100 倍以上。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。