论文地址:DeepVisage: Making face recognition simple yet with powerful generalization skills
摘要:
- 提出了一种易于训练和单一的基于CNN的FR(人脸识别)方法。
- 我们的CNN模型利用残差学习框架。 此外,它还使用 normalized features 来计算损失。
- 泛化:我们广泛的实验表明,在不同的数据集上有很好的泛化能力。
- 成就:我们在LFW、IJB-A、You Tube Faces和CACD数据集上获得 competitive and state-of-the-art results
介绍:
前人经验;最先进的FR方法:
- 方法:[ Deepface ,Facenet ,DeepID3,24,VIPLFaceNet(baidu)],
- 测试集:LFW数据集高准确率,
- 训练集:[11, 24, 44, 2]
- 优化策略:loss functions [Facenet, DeepID3]、fine-tune CNN(需要对每个目标数据集进行培训,这限制了泛化能力)、metric learning [Triplet similarity, 9](并不能保证会变好)、从多个CNN[DeepID3,20]连接特征
实践
网络
其中:
- CoPr:卷积层 (PReLU)
- ResBl: output = input + CoPr(CoPr(input))
- # Replication重复次数
- FN表示特征归一化。
loss:softmax loss
BN
预处理
我们在训练和测试过程中保持相同形式的2D人脸图像。 我们的预处理步骤是:
- (A)使用MTCNN[45]检测器 得到人脸框和关键点;
- (B)通过应用2D相似变换对人脸图像进行归一化。 变换参数是从112×96图像中的关键点坐标计算出来的
- (C)转换为灰度
识别
余弦相似度判别
CNN 训练
- 训练集:我们从MS-Celeb-1M[11]数据库的清洁4版本中收集训练图像,该数据库由62.5K身份的4.47M图像组成。 我们只使用身份标签来训练CNN模型。
- 数据集拆分:我们使用95%的图像(4.2M图像)进行训练,5%的图像(232K图像)用于监测和评估损失和准确性。
- 优化器:我们使用随机梯度下降法训练我们的CNN 动量设定为0.9。
- 惩罚:我们还应用了L2正则化,其权重衰减设置为5e−4。
- 学习率:我们开始CNN训练,学习率为0.1,2 个 epoch。 然后我们在每个 epoch 之后减少10%。 我们在5个 epoch 之后停止训练。
- 批次:我们在每个小批中使用120幅图像。
- 数据增强:在训练过程中,我们通过水平翻转图像来应用数据增强。
- 注意:在评估期间 在特定的数据集上,我们不应用任何额外的CNN训练或微调和降维。
测试
测试一:
测试二:IJB-A数据集,其中T@F0.001,表示误判率为0.001下召回率,ExTr额外训练,FT=fine-tune
测试三:YouTube Faces [40] (YTF)
测试四:cacd
测试五:上部分。测试不同训练集,对准确率的影响。下部分,测试不同人数,不同张数,对准确率影响。
测试六:接下来,我们根据不同的CNN组件和模型对结果进行分析。
- CASIA[44]数据集训练
- FN 特征归一化
- CL 中心损失
- 用ReLU而不是PRELU训练我们的CNN,并观察到它降低了精度大约0.5%。
分析不正确的结果