赞
踩
论文:ArcFace: Additive Angular Margin Loss for Deep Face Recognition
论文链接:https://arxiv.org/abs/1801.07698
代码链接:https://github.com/deepinsight/insightface
这篇文章提出一种新的用于人脸识别的损失函数:additive angular margin loss,基于该损失函数训练得到人脸识别算法ArcFace(开源代码中为该算法取名为insightface,二者意思一样,接下来都用ArchFace代替)。ArcFace的思想(additive angular margin)和SphereFace以及不久前的CosineFace(additive cosine margin )有一定的共同点,重点在于:在ArchFace中是直接在角度空间(angular space)中最大化分类界限,而CosineFace是在余弦空间中最大化分类界限,这也是为什么这篇文章叫ArcFace的原因,因为arc含义和angular一样。除了损失函数外,本文的作者还清洗了公开数据集MS-Celeb-1M的数据,并强调了干净数据的对实验结果的影响,同时还对网络结构和参数做了优化。总体来说ArcFace这篇文章做了很多实验来验证additive angular margin、网络结构设计和数据清洗的重要性,非常赞。
不管是SphereFace、CosineFace还是ArcFace的损失函数,都是基于传统的softmax loss进行修改得到的,因此公式1就是softmax loss损失函数。
首先把偏置bj设置为0,,然后权重和输入的内积用下面式子表示。
当用L2正则化处理Wj使得||Wj||=1,L2正则化就是将Wj向量中的每个值都分别除以Wj的模,从而得到新的Wj,新的Wj的模就是1。从公式1就可以得到下面这个式子,这一步操作在SphereFace、CosineFace中都有做。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。