由于类别样本不均衡,人脸检测只在正脸识别上有优秀的表现,它们很难识别侧脸样本。近日,香港中文大学和商汤科技等研究者提出了一种在深度表示空间中通过等变映射在正脸和侧脸间建立联系的方法,该方法的计算开销较少,但可以大大提升侧脸识别效果。
引言
深度学习的出现大大推动了人脸识别的发展。而人脸识别的焦点倾向于以正脸附近为中心,然而在不受限的环境中进行人脸识别,并不能保证其结果。尽管人类从正面识别侧面的表现只比从正面识别正面的表现差一点,可现存的算法在处理类似问题时准确率会下降 10% 以上。因此,姿势的变化仍旧是人脸识别应用在现实世界的重大挑战。
图 1:在极具挑战性的正面-侧面面部数据集上对最先进的人脸识别模型进行测试。显而易见,不同人的侧脸很容易会被进行错误匹配(假正类),而同一个人的正脸可能没法和他的侧脸匹配到,从而导致了假负类。
我们在图 1 中展示了最先进的人脸识别模型的错误模式。我们训练了与 [34] 中提到的一样的模型——ResNet-18 模型。这个模型在 LFW 基准数据集中的准确率高达 99.3%。尽管该模型很强大,但它还是会误匹配不同人的正脸和侧脸从而得到一些假正类结果。此外,该模型还会错配相同个体的正脸和侧脸,从而导致假负类结果。
为什么人脸识别技术在侧脸上表现欠佳?深度学习系统很大程度上依靠数据驱动。一般而言,模型的泛化能力和数据量成正比。模型训练使用的数据集正脸和侧脸数据量不均衡,因此训练出的模型更擅长分辨正面。目前我们还没有涵盖人类所有姿势且分布均匀的数据集,因此研究人员要用其他方法解决侧脸识别问题。很多方法在识别前尽可能细致地描述面部 3D 结构,使其归一化为只含正面的图像;或采用另一个深度模型(或生成对抗网络)将人脸转正。这些方法会给整个系统增加负担。此外,面部图像,尤其是极侧面的图像很难转化为自然状态。一般而言,合成的正面图片有人工造成的遮挡或非严格表情,它们都会影响模型的性能。我们还可以采用分而治之的方法,也就是说,用独立的模型来学习特定姿态的一致性特征 [19]。但这些策略因为使用多个模型而会增加计算成本。
图 2:该图上部分表明个体不同姿势嵌入的深度特征。DREAM 模块对侧脸特征添加残差,还可以将其映射到正脸空间上。我们在图片下部分展示了实际的侧脸重构图和其正面映射。
本研究假设在深度特征空间中,侧脸区域和正脸区域有关联。图 2 表明同一主体不同姿势的面部的深度表示。输入任意姿势的图像,我们可以将其特征通过添加的残差映射函数映射到正脸的特征空间上。这一理论和特征等变性的概念很接近,通过特征等变性发现,可以通过转换输入图得到深度学习层的表示。有趣的是,这样的转换可以通过基于数据的映射函数学习到,而映射函数之后还可以应用于控制输入图的表示,以达到想要的转换。
我们由此受到启发,开发了深度残差等变映射(DREAM)模块。该模块可以在高层深度特征空间中将正脸和侧脸进行转换。该模块自适应地将残差添加到输入表示中,将侧脸转换为标准姿势使识别变得更为简单。为了适应任意姿势的面部输入,我们引入软门控机制(soft gate)自适应地控制残差量,这样在输入正面姿势的情况下,为保结果不变,会给极侧的姿势加入更多残差。
从概念上讲,我们的这项工作与脸部正向化(frontalization)有关,因此我们的方法也可应用于除图像空间的正向化的其他问题。我们从实验中观察到:从侧脸特征向正脸特征转化比图像级的正向化效果更好,也就是说,在图像合成问题上该方法对负影响更为敏感。据我们所知,我们所做的这项研究,是第一次尝试在深度特征空间进行侧面到正面的转换。
DREAM 模块的吸引力在以下方面:
该模块实施简单。具体来说,DREAM 模块是一个简单有效的门控残差分支。它可以通过将这个模块拼接到基础网络,集成到现有的卷积神经网络架构中,无需改变面部表示的原始维度,还可以用标准反向传播进行端到端的训练。该模块权重较轻,它在基础的模型上添加的参数很少,因此无须太多计算资源。以 ResNet-18 为例,该模块只增加了 0.3% 的参数和 1.6% 的时间成本。基础网络识别近正面图片效果很好,且该模块能帮助基础网络在识别极端姿势的面部时取得更好的表现。该方法并不需要更详细的数据,面部数据的标准化也是以大多数现有的针对面部识别的研究为基础实现的。
深度残差等变映射
图 3:DREAM 模块的设计思路非常简单,而且该模块易于添加到已存的 CNN 中。该模块可以轻松地将残差添加到输入表示中,将侧脸转换为标准姿势,使识别变得简单。
我们描述了三种使用 DREAM 的方法。三种实验的方法比较将在后面的实验部分提出。
拼接。部署 DREAM 模块最方便的办法是直接将模块「拼接」到训练好的 CNN 中。特别是在给定基本网络架构的时候,我们可以在不改变任何原始模型学习参数的情况下,将 DREAM 模块拼在基础网络最后的特征层中。
图 4:深度特征可视化。第一行和第三行展示的是重构侧脸原始特征。第二行和第四行描绘的是通过 DREAM 模块映射重构特征。
端到端。我们提出的这个轻权重的模块也可以端到端的方式和主干 CNN 一起训练。给定一个简单的基础网络,我们将 DREAM 模块插入该网络,并直接用随机初始参数训练新网络。如果这个 CNN 不够简单或是之前训练过,我们可以使用现有的面部识别损失(例如,验证损失(verification)、识别损失(identification)等)用端到端的方法训练 DREAM 模块时对 CNN 进行微调。我们将这种策略命名为「end2end」。使用这种策略,模型在侧脸识别方面的表现无法保证,因为 DREAM 模块可能无法分辨正面和侧面,原因是在模块训练过程中没有具体地将一张脸的正面和侧面配对。
端到端+重新训练。我们先将 CNN 和 DREAM 同时训练,再用成对的正面侧面的数据对 DREAM 模块进行有针对性地训练。
表 1:有正面侧面设置的 CFP 数据训练得到的结果。等错误率(EER)如表所示,EER 值更低表示结果更好,加粗的是每一行中最好的结果。
图 6:在偏航空间用朴素 ResNet-18 和 ResNet-18+DREAM 预测得到的假正类率和假负类率间进行的比较。(a)和(b)表现了用不同偏航角(y_1,y_2)成对人脸数据预测得到的假正类率和假负类率的热力图。0.63→0.53 的意思是使用 DREAM 后,人脸偏转角度的余弦相似度从 0.63 降到了 0.53。
论文:Pose-Robust Face Recognition via Deep Residual Equivariant Mapping
论文链接:https://arxiv.org/abs/1803.00839
摘要:深度学习的发展使人脸识别取得了非凡的成就。然而,现在的许多人脸识别模型识别侧面的性能,尤其相较于识别正面,表现仍有不足。主要原因之一在于训练数据中正面数据和侧面数据分布不均匀——正脸数据比侧脸数据要多得多。此外,由于存在姿态的大范围变化,几何学意义上的不可变也是模型学习深度特征表示的难点之一。在本研究中,我们假设在正脸和侧脸间存在固有的映射关系,因此,在深度表示空间中可以通过等变映射在正脸和侧脸间建立联系。在构建映射的过程中,我们建立了新的深度残差等变映射(DREAM)模块,该模块可以自适应地在输入深度特征表示中添加残差连接,使侧脸表示转换为标准姿势,以简化识别。对许多强大的深度网络而言,包括 ResNet 模型,DREAM 模块在无需增强数据中侧脸部分的情况下,大大增强了模型在侧脸识别方面的表现。该模块易于使用,而且运行中计算开销较少。
举报/反馈

机器之心Pro

15万获赞 38.8万粉丝
专业的人工智能媒体和产业服务平台
机器之心官方账号,优质科技领域创作者
关注
0
0
收藏
分享