Deep Face Recognition

这篇论文探讨了深度学习在人脸识别领域的应用,包括数据集的构建和深度网络的训练。作者提出了一种大规模人脸数据集的自动化和半自动化收集方法,并通过三元组损失学习实现了人脸嵌入。实验结果显示,这种方法在标准人脸基准测试上达到了先进的结果。
摘要由CSDN通过智能技术生成

摘要

  这篇论文的目标是人脸识别——从一张照片或视频中跟踪的一组人脸识别。这一领域最近的进展是由于两个因素:(i)使用卷积神经网络(CNN)对任务进行端到端学习,(ii)超大规模训练数据集的可用性。
  我们做了两个贡献:首先,我们展示了一个非常大规模的数据集(260万幅图像,超过2.6万名人员)是如何通过循环中的自动和人工组合来组装的,并讨论了数据纯度和时间之间的权衡;其次,我们通过深入网络训练和人脸识别的复杂性,提出了在标准LFW和YTF人脸基准上达到比较先进结果的方法和步骤。

1 引言

  卷积神经网络(CNNs)席卷了计算机视觉界,极大地提高了许多应用的技术水平。这些方法成功的最重要的因素之一是大量训练数据的可用性。ImageNet大尺度视觉识别挑战(ILSVRC)的[16]有助于为一般图像分类任务提供这些数据。最近,研究人员已经将数据集用于分割、场景分类和图像分割[12,33]。
  然而,在人脸识别领域,很大程度上由于大规模的公共数据集一直缺乏这一因素,该领域的大多数最新进展仍局限于互联网巨头,如Facebook和谷歌等。例如,最新的人脸识别方法谷歌[17]使用2亿张图像和800万个独特身份进行训练。这个数据集的大小几乎比任何公开的人脸数据集都要大三个数量级(见表1)。不用说,构建这么大的数据集超出了大多数国际研究小组的能力,尤其是在学术界。
在这里插入图片描述
表1:数据集比较:我们的数据集是Goole、Facebook或百度的工业数据集之外最大的人脸图像集合,这些数据集是不可公开获取的。

  本文有两个目标。第一个是提出一个程序来创建一个相当大的人脸数据集,同时只需要有限的人力进行注释。为此,我们提出了一种利用网络上可用的知识来源收集面部数据的方法(第3节)。我们使用这个程序构建了一个超过200万个面部数据集,并将其免费提供给研究社区。第二个目标是调查各种CNN人脸识别和验证架构,包括探索人脸对齐和度量学习,使用新颖的数据集进进行(Section 4 )。许多近期人脸识别作品已经提出了许多人脸变体CNN架构 , 我们评估这些模型的选择以过滤无关重要的细节。结果是简单得多但有效的网络架构在所有流行的图像和视频人脸识别基准上实现了接近先进的结果 (Section 5 和 6 )。我们结果总结在Section 6.2.

2 相关工作

  本文主要研究图像和视频中的人脸识别,这是一个近年来备受关注的问题。在文献中提出的许多方法中,我们将未使用深度学习的方法(我们称之为“浅”)与使用深度学习的方法(我们称之为“深”)区分开来。浅方法首先使用手工制作的局部图像描述符如SIFT、LBP、HOG提取人脸图像的一种表示[5,13,22,23,32];然后他们使用一种池化机制将这些局部描述符聚合成一个整体的人脸描述符,例如Fisher向量[15,20]。这里无法详细描述这类方法的种类很多(参见[15]中的参考资料以获得概述)。
  本工作主要是关于人脸识别的深层结构。这些方法的定义特征是使用CNN的特征提取器,一个由几个线性和非线性算子组成的可学习的函数。这类方法的一个代表性系统是DeepFace[29]。该方法使用一个经过训练的深度CNN,使用包含4000个唯一身份的400万个样本的数据集对人脸进行分类。它还使用了Siamese网络架构,在那里相同的CNN被应用到对的面孔获得描述符,然后使用欧几里得距离进行比较。训练的目标是将同一人的两对面孔之间的距离最小化(即描绘相同的身份),而将不同人的两对面孔之间的距离最大化,这是一种度量学习的形式。除了使用大量的训练数据外,DeepFace还使用了一个CNN集合,以及一个预处理阶段,在预处理阶段,人脸图像将使用3D模型对齐到一个标准姿态。引入后,深脸在野外的标记脸(LFW[8])基准以及Youtube的脸在野外(YFW[32])基准达到了最好的性能。作者后来在[30]中扩展了这项工作,将数据集的大小增加了两个数量级,包括1000万个身份和每个身份50张图像。他们提出了一种自举策略来选择身份来训练网络,并表明可以通过控制全连接层的维数来改进网络的泛化。
  Sun等人的DeepId系列论文[24,25,26,27]扩展了DeepFace的工作,每一篇论文都逐步但稳步地提高了LFW和YFW的性能。许多新的想法被包含在本系列论文,包括:使用多个CNN[25],贝叶斯学习框架[4]来训练一个度量,多任务学习的分类和验证[24],一个完全不同的CNN架构分支每次卷积后接全连接层[26],和很深的网络[19,28,27]。与DeepFace相比,DeepID没有使用3D面部对齐,而是使用更简单的2D仿射对齐(正如我们在本文中所做的),并对CelebFaces[25]和WDRef[4]的组合进行训练。然而,[27]的最终模型相当复杂,涉及约200个cnn。
  最近,谷歌[17]的研究人员使用了一个包含2亿人脸身份和8亿图像人脸对的庞大数据集来训练一个类似[28]和[18]的CNN。不同之处在于他们对“基于三元组”的损失的使用,即比较两张一致的脸(a,b)和第三张不一致的脸c。目标是使a比c更接近b;换句话说,不同于其他度量学习方法,比较总是相对于一个“枢轴”人脸。这与应用程序中使用该指标的方式更接近,在应用程序中,将查询人脸与数据库中的其他人脸进行比较,以找到匹配的人脸。在训练中,这种损失会在多个层面上出现,而不仅仅是最后一个层面。该方法在LFW和YTF上取得了目前最好的性能。

3 数据收集

在这里插入图片描述
图1:来自数据集的6个身份的示例图像。
  在本节中,我们提出了一个多阶段策略来有效地收集一个包含数百个示例图像的数千个独特身份的大型人脸数据集(表1)。表2总结了这个过程的不同阶段和相应的统计数据。下面将详细讨论各个阶段。
在这里插入图片描述
表2:每一阶段处理后的数据集统计。相当一部分的获取过程是自动进行的。类型A和M指定处理阶段是自动执行还是手动执行。EER值表示CNN配置的LFW在数据集的那个阶段进行训练,并使用l2距离进行比较。
阶段1 引导和筛选候选身份名称列表。在建立数据集的第一步是获得候选身份的名单,以获得人脸。这样做的目的是为了关注名人和公众人物,比如演员或政治家,这样就可以在网上找到足够多的清晰图片,同时也避免在下载这些图片时出现任何隐私问题。通过从互联网电影数据库(IMDB)名人列表中按受欢迎程度抽取男性和女性,得到公众人物的初始列表。该列表以行演员居多,与Freebase知识图[1]中的所有人进行交集,该知识图包含大约500K不同身份的信息,得到了2.5K男性和2.5K女性的排名表。这就形成了一个包含5K个已知的热门名字(来自IMDB)的候选名单,并为其提供了诸如种族、年龄、亲属关系等属性信息(来自知识图)。选择总共5K张图像是为了使后续的注释过程便于一个小型注释团队进行管理。
  然后对候选列表进行过滤,以去除没有足够清晰图像的身份,并消除与标准基准数据集的任何重叠。为此,使用谷歌图像搜索下载5K名称中的每个名称的200幅图像。然后,将这200幅图像呈现给人类注释者(按顺序分为4组,每组50幅),以确定哪些标识能够产生足够的图像纯度。特别地,只有当对应的200幅图片的90%是纯的(同一个人)时,注释者才保留这个身份。不纯可能是由于同音或图片匮乏。这个过滤步骤将候选列表减少到3,250个身份。接下来,所有出现在LFW和YTF数据集中的名字都被删除,以便能够在新的数据集中进行训练,并在这些基准上进行公平的评估。通过这种方式,最终得到了2622名名人的名单。
阶段2 为每个身份收集更多的图像。在谷歌和Bing图像搜索中分别查询2622名名人的名字,然后在附加关键字后再进行查询“演员”的名字。这将对每个人名进行4个查询,每个查询得到500个结果,每个身份对应2000张图片。
阶段3 使用自动过滤器提高纯度。这一阶段的目的是使用分类器自动去除每个集合中的错误人脸。为此,将每个身份的前50幅图像(基于下载集合中谷歌搜索排名)作为正训练样本,其他所有身份的前50幅图像作为负训练样本。使用Fisher向量人脸描述符训练每个身份的one-vs-rest线性支持向量机[15,20]。然后使用每个身份的线性支持向量机对下载的2000张该身份的图像进行排序,并保留前1000张图像(选择1000的阈值数,有利于在正向预测的高精度)。
阶段4 清除相同的图片。由两个不同的搜索引擎发现的同一幅图像,或由同一幅图像的副本在两个不同的互联网位置发现,将被删除。接近重复的图像(例如只有色彩平衡不同的图像,或文字重叠的图像)也会被删除。这是通过计算每个图像的VLAD描述符[2,9],使用非常严格的阈值将这些描述符聚类到1,000张图像中,并在每个聚类中保留单个元素。
阶段5 最后手动过滤。目前有2,622个身份,每个身份最多有1,000张图像。这最后一个阶段的目标是使用人工注释提高数据的纯度(精度)。但是,为了减少注释任务的负担,从而避免高昂的注释成本,注释器可以通过再次使用自动排序来辅助。然而,这次训练的多路CNN使用[10]的AlexNet架构区分2622个面部身份;然后,softmax分数被用来在每个身份集合内的图像排名通过降低成为一个内值的可能性。为了加速注释器的工作,每个身份的排序图像以200个块显示,注释器被要求对块进行整体验证。特别是,如果一个块的近似纯度大于95%,那么它就被声明为是好的。最终得到的好图像数量是982,803张,其中大约95%是正面图像,5%是侧面图像。
讨论 总的来说,这种结合使用互联网搜索引擎,使用现有的人脸识别方法过滤数据,以及有限的人工管理,能够产生一个精确的大规模的带有身份标签的人脸数据集。人工注释的成本非常小——涉及的人工工作总共只有14天左右,到阶段4只需要4天。表1将我们的数据集与几个现有数据集进行了比较。
  在上面的过程中已经做出了许多设计选择。这里我们建议一些替代方案和扩展。Freebase源代码可以被其他类似的源替换,比如DBPedia(结构化维基百科)和谷歌知识图。事实上,Freebase很快就会被关闭,取而代之的是谷歌Knowledge Graph。
在图片收集方面,可以从Wikimedia Commons、IMDB以及百度和Yandex等搜索引擎上收集更多的图片。在第1阶段可以消除LFW和YTF的身份重叠,以增加后续阶段的可用人数。可以改变阶段的顺序,在阶段2之前删除接近重复的副本。在扩展方面,收集的第一阶段可以通过查看下载图像之间成对距离的分布来自动化。具有高纯度的象类应该表现出相当单峰的分布。

4 网络架构与训练

  本节描述了在我们的实验中使用的cnn及其训练。受[19]的启发,这些网络“非常深”,因为它们由一长串卷积层组成。这些cnn最近在ImageNet ILSVRC 2014挑战[16]的一些任务以及许多其他任务[7,19,28]中取得了最先进的性能。

4.1 学习一个人脸分类器

  最初,深层架构φ的算法是通过考虑识别N = 2622个独特个体的问题来引导的,并将其设置为N路分类问题。CNN通过包含N个线性预测器 W ∈ R N × D , b ∈ R N W∈R^{N×D},b∈R^N WRN×D,bRN的最终全连通层,,将每个训练图像 l t , t = 1 , … T l_t,t=1,…T lt,t=1,T与一个分数向量 x t = W φ ( l t )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值