(DeepID)Deep Learning Face Representation from Predicting 10,000 Classes

本文提出了一种使用深度学习来学习高级人脸识别特征的方法,称为DeepID,通过预测大量类别进行训练。DeepID特征是从深度卷积网络的隐藏层提取,用于人脸验证。实验表明,这种方法在弱对齐的人脸上的验证精度达到97.45%,并且随着训练类别增加,验证性能提高,具备良好的泛化能力。
摘要由CSDN通过智能技术生成

https://www.researchgate.net/publication/283749931_Deep_Learning_Face_Representation_from_Predicting_10000_Classes

摘要

  本文提出通过深度学习来学习一组高级特征表示,称为Deep hidden IDentity features (DeepID),用于人脸验证。我们认为DeepID可以通过富有挑战性的多层次的脸识别任务有效地学习,同时他们可以推广到其他任务(如验证)和新的身份未知的训练集。此外,越来越多在训练阶段预测的人脸类别越来越多,DeepID泛化能力的增加。DeepID特征取自深度卷积网络(ConvNets)的最后一个隐藏层的神经元激活。当这些深度卷积网络作为分类器学习,在训练集中识别约1万个人脸身份,并配置成沿着特征提取层次不断减少神经元数量时,这些深度卷积网络在顶层逐渐形成只有少量隐藏神经元的紧凑的与身份相关的特征。所提出的特征从不同的人脸区域提取,以形成互补和过完备的表征。任何先进的分类器都可以学习基于这些高级表示的人脸验证。仅在弱对齐的人脸上实现了97.45%的LFW验证精度。

1 引言

  近年来,由于其实际应用以及广泛报道的人脸验证算法LFW[19]的发布,人们对无约束条件下的人脸验证进行了广泛的研究[21,15,7,34,17,26,18,8,2,9,3,29,6]。目前表现最好的人脸验证算法通常使用过完整的低级特征来表示人脸,其次是浅模型[9,29,6]。近年来,诸如ConvNets[24]等深度模型被证明是提取高级视觉特征的有效方法[11,20,14],并用于人脸验证[18,5,31,32,36]。Huang等人[18]学习了一个无监督的生成深度模型。Cai等[5]学习了深度非线性度量。在[31]中,深度模型由二值人脸验证目标监督。与此不同的是,在本文中,我们提出通过人脸识别,利用深度模型来学习高水平的人脸识别特征,即将一幅训练图像分成n个身份(本研究中n≈10000)。这种高维预测任务比人脸验证更具挑战性,但它可以很好地推广学到的特征表示。这些特征虽然是通过识别来学习的,但对于人脸验证和训练集中未见的新面孔都是有效的。
  我们提出了一种利用深度卷积网络学习高级过完备特征的有效方法。特征提取过程的高级说明如图1所示。ConvNets学习根据身份对所有可用于训练的人脸进行分类,最后一个隐藏层神经元激活作为特征(称为Deep hidden IDentity features或DeepID)。每个卷积神经网络以一个人脸patch作为输入,提取底层的局部低层特征。特征数沿着特征提取的级联不断减少,在顶层逐渐形成更全局的、更高级的特征。高度紧凑的160维DeepID是在包含丰富身份信息的级联末尾获得的,该级联可以直接预测更多的身份类别(例如:10,000类)。同时对所有的身份进行分类,而不是像[21,2,3]那样训练二分类器,这基于两个考虑。首先,将一个训练样本预测成多个类中的一个要比执行二进制分类困难得多。这项具有挑战性的任务可以充分利用神经网络的超强学习能力来提取人脸识别的有效特征。其次,它隐式地增加了一种强正则化的ConvNets,这有助于形成可以很好地分类所有身份的共享隐藏表示。因此,学习到的高级特征具有良好的泛化能力,不会过度拟合到训练一个小子集的人脸。我们将DeepID维度限制为显著小于它们所预测的身份类别,这是学习高度紧凑和区别特征的关键。我们进一步连接从不同的面部区域提取的 DeepID,以形成互补和过度完整的表征。学习到的特征在测试中可以很好地推广到训练中没有的新身份,并且可以很容易地与任何先进的人脸分类器(例如联合贝叶斯[8])集成在一起进行人脸验证。
在这里插入图片描述
图1.特征提取过程的说明。箭头表示正向传播方向。在每层的旁边标注了多层深卷积网每层的神经元数目。从每个卷积网的最后一层隐层提取DeepID特征,并预测大量的身份类。特征数沿着特征提取层叠不断减少,直到DeepID层。
  仅使用弱对齐的人脸,该方法在LFW上的人脸验证精度达到97.45%,几乎与人类97.53%的性能相当。我们还观察到,随着训练身份数量的增加,验证性能稳步提高。虽然训练阶段的预测任务变得更具挑战性,但学习到的特征的辨别能力和泛化能力有所提高。它为未来通过更多的训练数据来提高准确性敞开了大门。

2 相关工作

  许多人脸验证方法都是用高维过完备的人脸描述符来表示人脸,其次是浅模型。Caoetal[7]将每张人脸图像编码为26K个基于学习的(LE)描述子,在PCA后计算LE描述子之间的L2距离。Chen等人[9]在多尺度密集的人脸地标上提取了100K个LBP描述子,在PCA后使用联合贝叶斯[8]进行验证。Simonyan等人[29]在尺度和空间上密集计算了1.7M个SIFT描述符,将密集的SIFT特征编码为Fisher向量,并学习了判别降维的线性投影。Huang等[17]结合了1.2M CMD[33]和SLBP[1]描述符,学习了用于人脸验证的稀疏Mahalanobis 度量。
  已有的研究在低层次特征的基础上进一步学习了与身份相关的特征。Kumar等人[21]训练了属性分类器和微笑分类器来检测面部属性和测量与一组参考人物的面部相似性。Berg和Belhumeur[2,3]训练分类器来区分两个不同的人的脸。特征是学习分类器的输出。他们使用的SVM分类器是浅层结构,他们学习的特征仍然是比较低级的。相反,我们同时对训练集的所有身份进行分类。此外,我们使用最后的隐藏层激活作为特性,而不是分类器输出。在我们的 ConvNets,最后一个隐层的神经元数量比输出数量少得多,这迫使最后一个隐层学习共享隐藏表示面临不同的人来分类的,导致高度辨别能力和紧凑的特征具有良好的泛化能力。
  一些深层模型已用于人脸验证或识别。Chopraetal[10]使用一个Siamese网络[4]进行深度度量学习。Siamese网络从两个相同子网络的两个比较输入中分别提取特征,以两个子网络输出之间的距离为差异。[10]采用deep ConvNets作为子网络。与Siamese网络特征提取和联合识别人脸验证的目标不同,我们在两个步骤进行特征提取和识别,第一步特征提取学会了人脸识别的目标,这是一个比验证更强有力的监管信号。Huang等[18]利用CDBNs[25]生成特征,然后使用ITML[13]和线性SVM进行人脸验证。Cai等人[5]也学习了在Siamese网络框架下的深度度量,即[10],但使用了一个两级ISA网络[23]作为子网络。Zhu等[35,36]学习了深度神经网络在正常光照下对任意姿态和光照的人脸进行变换,然后使用最后的隐藏层特征或变换后的人脸进行人脸识别。Sun等人[31]使用multipledeep ConvNets学习高级人脸相似度特征,训练分类RBM[22]进行人脸验证。它们的特征是从一对脸联合提取的,而不是从一张脸。

3. 人脸验证的DeepID

3.1 Deep ConvNets

  我们的deep ConvNets包含四个卷积层(带有max-pooling)来分层提取特征,然后是全连接的DeepID层和softmax输出层,表示身份类。矩形patch输入为39×31×k,正方形patch输入为31×31×k,其中彩色patch k = 3,灰色patch k = 1。图2显示了采用39×31×1输入并预测n(例如n = 10,000)身份类的ConvNet的详细结构。当输入大小改变时,以下图层中地图的高度和宽度也会相应改变。DeepID层的尺寸固定为160,而输出层的尺寸根据它预测的类的数量而变化。特征数沿着特征提取层次结构继续减少,直到最后一个隐藏层(DeepID层),在这里形成了高度紧凑和可预测的特征,它预测只有少数特征的更大数量的身份类。
在这里插入图片描述
图2.ConvNet结构。每个长方体的长度、宽度和高度表示所有输入、卷积和最大池层的映射号和每个映射的维度。内部的小长方体和正方形分别表示卷积层和maxpooling层的3D卷积核大小和2D池区域大小。最后两个完全连接层的神经元数目标记在每一层的旁边。
卷积运算被表示为:
在这里插入图片描述
其中 x i x^i xi y j y^j yj分别是第i个输入映射和第j个输出映射。 k i j k^{ij} ki

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值