CosFace:Large Margin Cosine Loss

  • 《CosFace: Large Margin Cosine Loss for Deep Face Recognition》
    2018,Hao Wang et al. Tencent AI Lab

引言:
所有基于softmax loss改进的损失都有相同的想法:最大化类间方差和最小化类内方差
本文提出了一个新的损失函数:large margin cosine loss (LMCL)
更具体地说,我们通过对特征向量和权重向量进行L2归一化以消除径向变化,将softmax loss表示为cosine loss。在此基础上,引入余弦间隔(margin),进一步最大化角空间中的间距(角间距)。
实验结果表明,在MegaFace、YTF和LFW数据集上都达到了最好的效果。
CosFace框架:
在这里插入图片描述
Large Margin Cosine Loss(LMCL)算法流程:
参考:https://zhuanlan.zhihu.com/p/34717205
https://zhuanlan.zhihu.com/p/45153595
CosFace的思想和SphereFace的思想相近,其中主要做了一下两点的改进:
1.Loss的形式做了稍微的改变,将超参数m由乘法运算变成了减法运算。
2.不仅对权重进行了正则化,还对特征进行了正则化。

首先,看一下原始的softmax loss:
在这里插入图片描述
其中: f j f_{j} fj是当前的类别权重 W j W_{j} Wj和feature x的乘积,bias和以前一样置0.
在这里插入图片描述
然后,分别对W和X做L2 Normalization,使其Norm为1,但是考虑到X的Norm太小会导致训练loss太大(softmax的值太小),进行一次缩放,固定为大小S,所以修改后的loss如下,也称为NSL,Normalized version of Softmax Loss:
在这里插入图片描述
到目前为止,模型只是转换了学习空间而已,由最开始的优化内积变成了现在的优化角度,但是学习到的feature仍然只是separable,还没到达我们的目标:discriminative features。
所以我们引入一个cosine margin来进行度量的约束,让当前样本所属的类别在减去一个m之后仍然属于这个类别,即:
在这里插入图片描述
所以此时的loss变为LMCL:
在这里插入图片描述
注意,margin的相减操作是针对cosine的,所以scale的缩放仍然放在最外层。

对比不同的损失函数
针对目前出现的几中修改后的loss,进行一个比较,采用二分类进行分析:

在这里插入图片描述
Softmax Loss
决策边界为:
在这里插入图片描述
如上图所示,可以看出决策边界由权值变量和角度的cosine值一起决定,这样子就导致了,在cosine维度进行度量的时候,两个类别之间会出现重叠(margin<0)。

NSL:Normalized Softmax Loss
决策边界为:
在这里插入图片描述
而NSL loss是指权值和特征都进行正则化。在cosine维度进行度量的时候,两个类别之间有一个明确的决策边界。但是,由于边界空间为0(margin=0),导致处于边缘的情况,很容易出现分类错误。

A-Softmax:
决策边界为:
在这里插入图片描述
A-Softmax是对角度theta进行约束,故呈现在cos(theta)的坐标中,是一个扇形页面分界区。但是A-Softmax的margin是不连续的,随着theta的降低,margin也在跟着减小,当theta等于0的时候margin甚至消失,另外,A-Softmax还需要解决非单调性问题。

LMCL,Large Margin Cosine Loss:
决策边界为:
在这里插入图片描述
LMCL却克服了上述loss的缺点,两个类别之间有一个明确的边界空间(margin>0),相对于前几种loss,有更好的鲁棒性。
注意,在LMCL中,作者证明了s的范围,如下所示:
在这里插入图片描述
实验
数据预处理: 使用MTCNN进行人脸定位和关键点检测,相似变换进行校正,缩放到112x96,后-127.5/128进行归一化处理。
探索性尝试:
Effect of m.
在这里插入图片描述
Effect of Feature Normalization.

在这里插入图片描述
和不同的损失函数进行比较:
在这里插入图片描述
在megaface还有LFW上都是state-of-art。

总结:
我们提出了一种新的方法,称为LMCL,用于指导深层CNN学习高维的人脸特征。


注:博众家之所长,集群英之荟萃。

在这里插入图片描述

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Peanut_范

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值