ArcFace:用于深度人脸识别的添加角边距损失

摘要

使用深度神经网络进行大姿态人脸识别的特征学习面临的主要挑战之一是设计合适的损失函数,提高识别能力。中心损失惩罚欧式空间的深层特征与其对应类中心之间的距离,为了提高类之间的紧密度。SphereFace假设在最后的全连接层用线性变换矩阵可以作为类中心在角空间的表示,并以乘法的方式在深度特征和他们相关权重之间的角度。最近,一种流行的研究方法是在已有的损失函数加入边距,可以最大限度的提高面类可分性。在本文中,我们提出了一个添加角边距来获得用于人脸识别的高分辨特征。由于超球面测地线距离的实际对应关系,提出了ArcFace有一个清晰的几何解释。我们在超过十个人脸识别基准上对目前最新的人脸识别方法上进行了大量的实验评估,包括亿万级的配对法人图像数据库和大型的视频数据集。我们证明了ArcFace始终有雨最新的技术,可以在可忽略的计算开销下轻松实现,我们发布了所有证明的训练数据,训练代码,预先训练的模型,和训练的日志,在本文中这些可以帮助我们重新生成结果。

1 介绍:

使用DCNN嵌入人脸表示是人脸识别的首选方法,DCNN通常在姿势标准化步骤之后,将人脸图像映射到小类内距离和大类距离。 

图一 基于中心和特征的标准化,所有的恒等式都分布在超球面上,为了提高类内紧凑性,类内差异性,我们提出了四种测地线距离约束。A:边距约束:在样本和中心,加入测地线距离边距B:类内损失:在英本和相关性中心减少测地线距离C:内部损失:在不同的中心增加测地线距离。D:三重态损失:在三重态样本之间加入测地线边角距,在本文中,为了提高人脸识别模型的识别能力,我们提出了一种加入角边距损失,大量的实验结果表明,策略A是最有效的。

     这里有两个训练DCNN人脸识别的主线,这里可以训练一个多分类器,可以在训练集上分离不同的身份,比如使用softmax分类器,而有些可以直接学习嵌入,像三重损失,基于大姿态训练数据集和实验DCNN框架,两者都是基于softmax损失的方法和三重损失的方法都能获得良好的人脸识别性能,然而,这两种损失都有一些缺点,对于sofmax损失:(1) 线性变换矩阵 W\in R^{d\times n} 特征数n线性增加 ;(2)对于closed-set分类问题,学习到的特征是可分离的,但是对open-set人脸识别问题,没有更好的识别能力。对于三重损失,(1) 尤其是在大姿态数据集中,面三元组数量是一个组合爆炸,迭代次数显著增加,(2)semi-hard样本的挖掘是有效模型训练的一个相当困难的一个问题。

     几种变种提出了sofmax损失提高区分能力,wen等人开创了中心损失的先河,在每个特征点和类中心的欧式距离,可以获得内类之间的紧凑性,通过联合softmax损失惩罚来保证内类之间的离散性。然而,在训练时更新实际的中心是极大的困难,在人脸类的数量在最近急剧增加。

   通过观察训练在softmax损失在DCNN的分类上的最后全连接层的权值和每个面类的中心在概念上有相似性,工作提出了一种多角度边距惩罚,同时执行内类紧凑性和内类差异性可以使得训练模型有更好的判断能力,即使球面介绍了角边距最重要的思想,挺和谐损失函数需要一系列的近似,为了计算,这些结果在训练网络上是不能使用的,为了稳定训练,,他们提出了一个混合损失函数,介绍了标准的softmax损失,经验上,softmax损失控制了训练过程,因为基于整数的乘法角边距使得目标logit曲线过度倾斜,从而阻碍了收敛,CosFace直接在目标logit增加了余弦边距惩罚,可以更好的获得比SpherFace更好的性能,更容易实现,而且免除了softmax损失的联合监控的需求。

    在本文中,我们提出了一个附加角边距损失去更好的提高人脸识别模型的判断能力和稳定训练过程。如图2所示,在DCNN特征和最后全连接层直接的点积等于特征和权值归一化之后的余弦距离,我们利用了arc-cosine函数去计算当前特征和目标权值的的角度,此外,我们在目标角度增加了附加的角边距,在通过余弦函数得到了目标logit,然而,我们以固定的特征标准重新缩放所有的logit,接下来的步骤与softmax损失一样,提出的ArcFace的优点可以概括如下:

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值