https://arxiv.org/pdf/1406.4773.pdf
摘要
人脸识别的关键挑战是开发有效的特征表示,以减少同一人之间的差异,同时扩大不同人之间的差异。在本文中,我们证明了通过深度学习和使用人脸识别和验证信号作为监督可以很好地解决这个问题。深度识别验证功能(DeepID2)是通过精心设计的深度卷积网络来学习的。人脸识别任务通过将从不同身份提取的深度ID2分开来增加人与人之间的差异,而人脸验证任务通过将从相同身份提取的深度ID2拉到一起来减少人与人之间的差异,这两者对于人脸识别都是必不可少的。所学的DeepID2特征可以很好地推广到训练数据中未发现的新身份。在具有挑战性的LFW数据集[11]上,人脸验证准确率达到99.15%。与LFW的最佳深度学习结果[21]相比,错误率显著降低了67%。
1 引言
当以不同的姿势、照明、表情、年龄和遮挡呈现时,相同身份的面孔看起来会有很大不同。同一身份中的这种差异可能会压倒因身份差异而产生的差异,并使人脸识别变得困难,尤其是在不受约束的条件下。因此,减少同一人之间的差异,同时扩大不同人之间的差异是人脸识别中永恒的话题。可以追溯到早期的子空间人脸识别方法,如LDA [1],贝叶斯人脸[17],统一子空间[23,24]。例如,LDA通过使用两个线性子空间来近似个人之间和个人内部的面部变化,并找到投影方向以最大化它们之间的比率。最近的研究也明确或含蓄地针对同一目标。例如,度量学习[6,9,15]将人脸映射到一些特征表示,使得相同身份的人脸彼此靠近,而不同身份的人脸保持分离。然而,这些模型受到其线性性质或浅层结构的限制,而个体间和个体内的变化是复杂的、高度非线性的,并且在高维图像空间中观察到。
在这项工作中,我们表明深度学习提供了更强大的工具来处理这两种类型的变化。由于其深度结构和大的学习能力,人脸识别的有效特征可以通过分层非线性映射来学习。我们认为,通过同时使用两个监控信号,即人脸识别和验证信号来学习这些特征是至关重要的,并且所学习的特征被称为深度识别-验证特征(DeepID2)。识别是将输入图像分类为大量的身份类别,而验证是将一对图像分类为是否属于同一身份(即二进制分类)。在训练阶段,给定一个有标识的输入人脸图像,其DeepID2特征提取在学习到的分层非线性特征表示的顶层隐藏层,然后通过另一个函数g(DeepID2)映射到大量身份之一。在测试阶段,学习到的DeepID2特征可以推广到其他任务(如人脸验证)和训练数据中未发现的新身份。识别监控信号倾向于将Deep ID2特征分离成不同的身份,因为它们不得不被分类为不同的类别。因此,习得的特征会有丰富的身份相关或人际差异。然而,识别信号对从相同身份提取的DeepID2具有相对弱的约束,因为不同的DeepID2可以通过函数g()映射到相同的身份。当DeepID2特性被推广到新任务和测试中的新身份时,这将导致问题,其中g不再适用。我们通过使用额外的人脸验证信号来解决这个问题,这要求从同一身份提取的每两个DeepID2向量彼此靠近,而从不同身份提取的向量则远离。DeepID2上的强每元素约束可以有效地减少个人内部的差异。另一方面,单独使用验证信号(即,一次仅区分一对深度2)在提取身份相关特征方面不如使用识别信号(即,一次区分数千个身份)有效。因此,这两种监控信号强调特征学习的不同方面,应该一起使用。
为了从不同的角度表征人脸,从不同的人脸区域和分辨率中提取互补的DeepID2特征,并通过主成分分析降维后连接形成最终的特征表示。由于学习到的DeepID2特征在不同身份之间是不同的,而在同一身份内是一致的,这使得下面的人脸识别更加容易。使用学习的特征表示和最近提出的人脸验证模型[3],我们在具有挑战性和广泛研究的LFW数据集上实现了最高的99.15%的人脸验证精度[11]。这是第一次仅提供面部区域的机器达到与人类的99.20%的准确度相当的准确度,向人类呈现包括面部区域和大背景区域的整个LFW面部图像以进行验证。
近年来,人们在深度学习人脸识别方面做了大量的工作[5,10,20,27,8,22,21]。在深度学习工作中,[5,20,8]使用验证信号学习特征或深度度量,而[22,21]使用识别信号学习特征,并在LFW达到大约97.45%的准确率。我们的方法显著提高了技术水平。联合解决分类和验证任务的思想被应用于一般对象识别[16],重点是提高固定对象类的分类精度,而不是隐藏特征表示。我们的工作目标是学习可以很好地推广到新类(身份)和验证任务的特征,而训练集中身份的分类精度对我们来说并不重要。
2识别-验证引导的深层特征学习
我们学习深度卷积神经网络(深度卷积神经网络)的变化特征[13]。深度卷积网络中的卷积和池运算是专门设计来分层提取视觉特征的,从局部低级特征到全局高级特征。我们的深层转换网络采用类似于[21]中的结构。它包含四个卷积层,前三层之后是maxpooling。要学习多种多样的高级功能,我们不需要权重共享的完整功能高级转换层[10]。具体来说,在我们的深度卷积网络的第三卷积层中,神经元权重在每2 × 2个局部区域中被局部共享。在第四个卷积层,更恰当地称为局部连接层,神经元之间的权重是完全不共享的。ConvNet在特征提取级联的最后一层提取160维DeepID2矢量。要学习的DeepID2层完全连接到第三和第四卷积层。由于第四卷积层比第三卷积层提取更多的全局特征,DeepID2层将多尺度特征作为输入,形成所谓的多尺度卷积网络[19]。我们对卷积层和DeepID2层的神经元使用整流线性单元(ReLU) [18]。对于大型训练数据集,ReLU比sigmoid单元具有更好的拟合能力[12]。给定大小为55 × 47的RGB输入,用于提取DeepID2的ConvNet结构的图示如图1所示。当输入区域的大小改变时,以下图层中的地图大小也会相应改变。DeepID2提取过程表示为f = Conv(x,θc),其中Conv()是由ConvNet定义的特征提取函数,x是输入人脸面片,f是提取的DeepID2向量,θcdenote是要学习的ConvNet参数。

DeepID2功能在两个监控信号下学习。第一个是面部识别信号,它将每个面部图像分类成n个(例如,n = 8192)不同身份中的一个。识别是通过跟随DeepID2层和n路softmax层来实现的,它输出n个类的概率分布。网络被训练成最小化交叉熵损失,我们称之为识别损失。它被表示为

其中f是DeepID2矢量,t是目标类,θid表示softmax层参数。pi是目标概率分布,其中除pt= 1外,所有I的pi= 0表示目标t类,pi是预测概率分布。为了同时对所有类别进行正确分类,DeepID2层必须形成有区别的身份相关特征(即人际差异较大的特征)。第二个是人脸验证信号,它鼓励从相同身份的人脸中提取的DeepID2相似。验证信号直接调整深度2,可以有效地减少个人内部的变化。常用的约束包括L1/L2范数和余弦相似性。我们采用基于L2范数的以下损失函数,它最初是由Hadsell等人[7]为降维而提出的

其中fiand fjare DeepID2向量是从两个比较的人脸图像中提取的。yij= 1表示fiand fjare来自同一身份。在这种情况下,它最小化了两个深度2向量之间的L2距离。yij = 1表示不同的恒等式,以及Eq。(2)要求距离大于裕量m,θve= {m}是验证损失函数中要学习的参数。基于L1范数的损失函数可以有类似的公式[16]。余弦相似性在[18]中被用作

其中d=fi⋅fj∣∣fi∣∣2∣∣fj∣∣2d = {f_i·f_j\over ||f_i||^2||f_j||^2}d=

本文介绍了一种名为DeepID2的方法,通过深度学习和使用人脸识别与验证信号作为监督,学习到能有效减少同一人之间差异并扩大不同人之间差异的特征。实验表明,这种方法在人脸识别和验证任务中表现优越,尤其在LFW数据集上验证准确率达到99.15%,比现有最佳结果提高了67%。
最低0.47元/天 解锁文章
376

被折叠的 条评论
为什么被折叠?



