论文 《SphereFace: Deep Hypersphere Embedding for Face Recognition》
代码: https://github.com/wy1iu/sphereface

摘要

论文主要是针对开集的人脸识别任务,在超球面上做到特征分布高内聚、低耦合。作者提出了一种新的损失函数,叫做angular softmax(A-Softmax)。

简介

SphereFace论文学习
闭集的人脸识别是一个分类问题,只需要特征是可分的即可;开集的人脸识别更加符合实际业务需要,本质上是一个度量学习的问题,需要学习到有判别力的大间隔的特征。

理想的开集人脸识别学习到的特征需要满足的条件是在特定的度量空间内,需要同一类内的最大距离小于不同类之间的最小距离。然后再使用最近邻检索就可以实现良好的人脸识别和人脸验证性能。

center loss只是强调了类内的聚合度;对比损失和三元组损失需要精心地构建图像对和三元组,耗时并且构建的训练对的好坏直接影响识别性能。

一般都是想在欧式空间中学习到有判别力的特征,作者提出了一个问题:欧式空间的间隔总是适合于表示学习到了有判别力的特征吗?
SphereFace论文学习
在上图中,对于一个二分类的softmax,决策边界是(W1W2)x+b1b2=0,假如定义||W1||=||W2||=1,b1=b2=0,那么决策边界的形式变换为||x||(cos(θ1)cos(θ2))=0,这样设计的损失函数直接关注的是特征的角度可分性,使得训练出的CNN学习到具有角度判别力的特征。

作者在修改的softmax的基础上进一步加强了限制条件设计了A-Softmax,引入了一个整数m加大角度间隔。决策边界变形为||x||(cos(mθ1)cos(θ2))=0||x||(cos(θ1)cos(mθ2))=0。通过最优化A-Softmax,决策区域更加可分,在增大类间间隔的同时压缩了类内的角度分布。

核心思想

三种softmax函数的决策边界对比
SphereFace论文学习

softmax-loss

二分类的softmax输出:
SphereFace论文学习
Wibii
p1>p2,样本x属于类1;p1<p2,样本x属于类2。
根据上面的公式,其实就是在比较WT1x+b1WT2x+b2,因此决策边界就是(W1W2)x+(b1b2)=0.
SphereFace论文学习

SphereFace论文学习

Modified softmax

由于WTix+bi=||WT||||x||cos(θi)+bi假如对权重进行归一化||Wi||=1,对偏置项置零bi=0,那么p1=||x||cos(θ1),p2=||x||cos(θ2),所以究竟分成那一类就取决于x与W1W2哪个的夹角较小。决策边界也就变成了cos(θ1)cos(θ2)=0。多分类的情况下,分类边界也是同样的。
SphereFace论文学习

A-softmax

A-softmax是在modified softmax的基础上添加更严格的限制,即要求cos(mθ1)>cos(θ2)cos(mθ2)>cos(θ1),其中m是大于1的正整数。决策边界也变为了cos(mθ1)=cos(θ2)cos(mθ2)=cos(θ1)。假如所有的训练样本都被正确分类,那么就会产生一个角度为m1m+1θ12的margin,其中θ12W1W2之间的角度。对应的损失函数变形为
SphereFace论文学习
θyi[0,πm];
泛化形式为:
SphereFace论文学习

SphereFace论文学习
最优化A-Softmax损失本质上是使得学习到的特征在超球面上更加具有可区分性。

A-Softmax损失的性质

  1. m越大,损失函数最优化的难度越大,形成的角度间隔越大;
  2. 由于要使得同类的最大角度分布小于最小的不同类之间的间隔,所以m的取值有下限。对于二分类的情况,mmin2+3;多分类情况下,m3;求解过程可以参考https://www.cnblogs.com/heguanyou/p/7503025.html#_caption_5
    实验中,作者一般使用m=4.

实验

预处理:MTCNN人脸检测和特征点提取;减127.5除128处理图像。
使用余弦距离比较图像提取的特征的相似度;
所有的测试图像的特征都是原始人脸图像的特征和水平翻转之后的人脸图像的特征的连接向量作为最终特征。

m越大,准确率越高

SphereFace论文学习

SphereFace论文学习

A-Softmax准确率全面超越Softmax

SphereFace论文学习

对比其他算法

SphereFace论文学习

SphereFace论文学习

附录

移除倒数第二层的ReLU

移除倒数第二层(一般为全连接层)的ReLU,学习到的特征分布不被限制在第一象限,学习到的特征分布更加合理。
SphereFace论文学习

权重归一化的作用

归一化权重可以减小训练数据不均衡造成的影响。
SphereFace论文学习
权重矩阵的第i行Wi表示第i类的系数,作者观察到第i类的训练样本数和Wi的权重的范数正相关,这是一个先验信息。作者认为Wi的范数主要取决于第i类训练样本的数量和分布情况。
对于人脸验证的任务和开集人脸识别的任务而言,测试图像的类是从未在训练样本中出现过的,所以应该消除上述先验信息。具体的做法就是归一化和softmax函数直接连接的全连接层的W。

偏置项置0

偏置项置0,主要是为了方便几何分析。作者分析了预训练的CASIC的模型,发现大部分的偏置项取值都是0;还对比了在MNIST上加不加偏置项,学习到的特征分布基本没什么变化。

可视化在MNIST数据集上通过A-Softmax loss学习到的特征分布

SphereFace论文学习

AFS Score

SphereFace论文学习

每一个idea有多大的作用

SphereFace论文学习

不同网络在MegaFace上的作用

SphereFace论文学习

A-Softmax的近似最优化策略

SphereFace论文学习
初始时,λ取值较大,A-Softmax近似于原始的Softmax;随着训练过程进行,减小λλ越小,训练难度越大,产生的训练效果越好.一般λ逐渐减小到5。

A-Softmax 于 L-Softmax对比

转载自:https://www.cnblogs.com/heguanyou/p/7503025.html#_caption_5
SphereFace论文学习
SphereFace论文学习

相关文章:

  • 2021-05-10
  • 2021-11-19
  • 2021-06-15
  • 2021-12-29
  • 2021-09-03
  • 2021-06-30
猜你喜欢
  • 2021-07-31
  • 2021-06-20
  • 2021-04-13
  • 2021-06-01
  • 2022-01-10
  • 2021-08-15
  • 2021-06-10
相关资源
相似解决方案