CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别

Paper name

CosFace: Large Margin Cosine Loss for Deep Face Recognition

Paper Reading Note

URL: https://arxiv.org/pdf/1801.09414.pdf

TL;DR

该篇文章出自CVPR2018,在Angular softmax loss基础上改进得到Large Margin Cosine Loss,同时在SphereFace的基础上提出特征规范化,在多个人脸识别数据集上取得了SOTA结果。


Introduction

  • 最近的研究发现基于传统的softmax loss训练得到的模型所生成的softmax loss的判别能力不够强,为了提高特征的判别能力,如Angular softmax loss之类的方法被提出用于增加模型生成的特征的类内相似性与类间区分度。Angular softmax loss将原始欧式空间中的特征投影到超球面的特征空间上,并且提出了angular margin用于增加类间区分度。作者任务超球面空间的angular margin相比于欧氏距离的margin更有优势,因为因为角度的余弦与softmax函数具有内在一致性。
  • 作者认为angular margin还不足够合理。余弦公式与人脸识别中常用的相似性度量方法相匹配,从这个角度看,直接在不同类别之间引入余弦margin来改进余弦相关的判别信息更为合理。
  • 在本文中,作者通过L2归一化特征和权重向量消除径向变化,将softmax loss重新改造为cosine loss,在此基础上引入余弦margin来进一步最大化超球面特征空间中的决策裕度。

Dataset/Algorithm/Model/Experiment Detail

实现方式

  • 一句话介绍完这篇paper的创新点就是将angular softmax loss中的loss设计进行了以下替换:

    • A-softmax loss
      在这里插入图片描述
    • Large Margin Cosine Loss在这里插入图片描述
  • 原因是作者认为由于余弦函数的非单调性,A-softmax loss较难优化,A-softmax loss为了解决这问题使用了特殊的分段函数。同时A-softmax loss的决策面会依赖于theta值,这使得不同的类别对应着不同的angular margin,在决策空间中,一些类间特征有着较大的margin同时另一些类间特征可能有着较小的margin,这导致特征的判别能力减弱。

  • 作者提出的CosFace整体框架如下所示
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第1张图片

  • Large Margin Cosine Loss

    • Large Margin Cosine Loss的推导与Angular softmax loss很相似
    • 对于传统的softmax loss:
      在这里插入图片描述
    • 其中f一般是全连接层的激活值,可以由全连接层的权重W与偏移量B所计算,为了简单讲B设为0:
      在这里插入图片描述
    • 其中权重W通过L2norm处理成二范数为1的形式(在测试阶段一般使用特征的余弦相似度,特征的norm也就在评测中没有影响),那么softmax loss可以转化为以下经过normalnize的形式:
      在这里插入图片描述
  • 作者认为上述softmax loss训练的模型生成的feature的判别性不够强,因为上述loss只强调正确分类即可,作者增加了cosine margin进一步提高类间判别度,其原理与angular softmax loss很相似
    在这里插入图片描述

  • 其中全连接层权重和输出特征经过normalnize操作:
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第2张图片

  • 与其他loss的对比,可以看到cosine loss相比于其他的loss的决策边界更为合理
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第3张图片

  • Normalization on Features。不同于A-softmax loss仅规范化了权重,作者提出对特征也做规范化处理。特征规范化的重要性主要有以下原因:

    • 没有特征规范化的原始softmax loss隐式学习欧几里德范数特征向量的(L2范数)及其余弦值角度。自适应学习L2范数以最小化总的损失,导致余弦约束相对较弱。作者要求整个特征向量集具有相同的L2范数,使得学习仅依赖于余弦值来发展判别能力。同一类的特征向量聚在一起,不同类的特征向量在超球面上分离
  • 从特征角度对LMCL的几何解释。不同颜色区域表示不同类的特征空间。与NSL相比,LMCL具有相对紧凑的特征区域
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第4张图片

  • LMCL的效果可视化实验,挑选了8个不同id的人的图片,生成二维的特征向量用于在特征空间中显示,得到的结果如下所示,可以看到随着m的增加类别间的决策边界更加分离,也就更利于进行人脸的特征识别比对:
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第5张图片

实验结果

  • 实现细节:

    • 通过MTCNN检测人脸区域与landmarks,利用五个人脸关键点进行相似变换
    • 在0.49M数据量的CASIA-WebFace数据集上进行训练,作者都来自于腾讯,可能不缺数据和计算资源,用了一些别的公开数据集以及私有数据集
    • 测试阶段原始图片与flipped图片的feature经过concat操作后作为最后的人脸特征
    • 余弦距离用于计算特征相似性
  • 在LFW与YTF两个经典公开数据集上的实验结果,可以看到margin对于识别准确度的影响很大,m=0.35时有最佳结果
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第6张图片

  • feature normalnization的效果
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第7张图片

  • 不同loss的结果对比
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第8张图片

  • 不同方法的对比
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第9张图片

  • MegaFace数据集结果,SOTA效果
    CosFace: Large Margin Cosine Loss for Deep Face Recognition - 人脸识别_第10张图片

Thoughts

该篇文章思路、撰写方式与SpereFace都很类似,对于loss的修改有明显涨点,作者也对修改的原因进行了详尽的解释。另外作者提出对特征进行规范化的方式也有一定涨点,该部分修改的考虑作者解释得也十分清楚。人脸识别这一系列的文章就是能够将简单的创新用十分详尽的语言进行描述。

你可能感兴趣的:(paper_reading,人工智能,人脸识别,机器学习,计算机视觉)