人脸识别之算法理论-双层异构深度神经网络

一、前言

无论我们处理何种AI的问题,数据是根本,数据是AI之源。对于人脸的场景,一个大规模人脸信息库可以定义为:

1.1、 人脸标签信息丰富

对于一张人脸图片元素而言,具有以下内容的部分标签或全信息:
人脸检测信息 :人脸数量、 人脸 坐标 ;
人脸空间信息 :俯仰角、 旋转角 、偏航角 ;
人脸关键点信息 :眼睛、 鼻子 、嘴、脸部 轮廓坐标 ;
人脸属性信息 :年龄、 性别 、人种 等;
人脸表情信息:微笑、 悲伤闭眼 、惊讶 、愤怒 、正常等;
人脸遮挡信息 :墨镜、 帽子 、口罩等;
人脸身份信息:姓名、 ID

1.2、 一个 ID 多结构标签图片

对于一人多张脸图片而言, 具有结构化的标签人脸图片组合;
例如:数据库有张三同一时间、同一地点、同一表情、不同角度的人脸图片集合;也有同一时间、同一地点、同一角度、不同表情的人脸图片集合;等等诸如此类。

1.3、多人多张结构化标签照片

多人多张的结构化人脸标签照片,构成结构化人脸信息库,一般都是千万乃至亿级的超大规模人脸库。

二、分层矢量化模型

这里写图片描述
为了解决深度神经网络需要大量数据的问题,我们提出了分层矢量化多媒体信息表达体系。分层矢量化实际上是一个多层的特征编码的过程。一个单层的特征编码由以下几个步骤组成:首先,对图片库里所有的人脸图像进行分层;其次对每块区域提取局部特征(如LBP、SIFT)形成局部特征描述子;然后,对所有局部特征进行量化形成字典;最后,根据字典信息和人脸图像的映射,编码形成人脸图像的特征向量,我们定义该特征向量为人脸DNA。

人脸DNA特征能够很好的描述特定人脸的不变量,该特征对人脸光线、角度、表情以及各种图片噪声具有一定的抗干扰性,再由双层异构深度神经网络进行优化与学习,人脸的区分性更强,识别效果更佳。

举个例子:我们认一个人,最简单的从这个人的身高、体型出发、发型等来判断是谁(认知第一层);更深一层从这个人的人脸、骨骼、虹膜、指纹来确认这个人的身份(认知第二层);更深层次,我们可以通过这个人的DNA 来确认这个人的真实身份(认知第三层)。所以认知一个人,随着逐层深入,一层比一层更加可靠。

人脸DNA类似,在计算机人脸识别过程中,我们可以将人脸的最外在特征眼睛大小形状(丹凤眼、浓眉大眼等),鼻子形状(鹰钩鼻、平鼻),嘴的大小形状(樱桃小嘴)理解成第一层;可以将眼睛的距离,五官的位置,脸的轮廓等理解成第二层;将人脸信息更抽象,提炼出人脸不随光照、角度、年龄等影响的特征,就是更深的层,我们定义为人脸DNA。

三、双层异构深度神经网络

3.1 异构深度神经网络的特点

深度神经网络有个缺点,在于它是一种黑盒方法,其细节隐藏在连接节点(神经元)和节点之间的权值中,而这些权值却是没有明确现实意义的(无法确定哪些权值与哪些属性有关,也就是说这种神经网络是同构的),这就导致了先验信息很难加入到网络的训练过程中。但在实际应用中,如果知道权值与属性之间的对应关系,将会给深度神经网络的应用带来非常大的便利。

例如,已有一个用于人脸身份识别的深度神经网络模型和少量具有种族标记的人脸图像数据(假设此种族的数据在之前训练数据中没有出现过),现在想更新网络参数并将此网络用于人脸种族识别。由于深度神经网络通常具有非常多(百万级)的参数,当训练数据量较少时,直接对模型进行更新(所有权值都将被更新)通常会导致过拟合,使网络性能变坏。但如果已知权值与“种族”这一属性的对应关系,那么就可以只对少量的权值进行更新,使模型更加适合于人脸种族识别。基于以上原因,我们提出了异构深度神经网络模型(图1)。

这里写图片描述
异构深度神经网络不再是一个黑盒,其中的某些权值是与具体的属性相对应的,甚至网络中的每层也可被设定为具有明确的含义,例如其神经元的激活值对应于某种粒度的特征。利用大量具有属性标记的训练数据,采用多任务学习机制并在损失函数中加入稀疏性约束,通过考察神经元对不同刺激的反馈,可建立网络单元与属性的映射关系,实现网络结构的语义化。利用异构深度神经网络,可在人脸模型中方便地加入光照、遮挡、角度、年龄、种族等多种先验信息,增强了模型的适应性和特征的表达能力。

3.2 双层异构深度神经网络

对于跨场景人脸识别问题,例如人证比对,即验证身份证芯片照与现场照的身份是否一致,由于两张照片失配程度较大(非同源、身份证照片分辨率低,两张照片年龄跨度大),会导致特征空间中样本分布的差异性较大,导致比对失败。为了将两张照片映射到同一特征空间中进行比较,在异构深度神经网络基础上,我们提出了双层异构深度神经网络模型。此模型中每层都是一个深度网络(分别以两张照片为输入),在训练时采用二分类损失函数并对两个网络中对应权值的差异性进行正则化,可实现不同图像空间到相同特征空间的映射。在特征空间中,相同身份人脸图像的类内差异变小,而不同身份人脸图像的类间差异变大,从而增强了特征的判别性。
这里写图片描述
以人证合一为例: 人的证件照要和现场抓拍或者普通照片上的人脸进行比对,我们不能直接拿来比对, 这样因为 年龄、光照等各种信息影响,识别不准。我们应该将证件照送到深度神经网络的一层,现场照送到深度神经网络的另一层 ,两张照片通过两层不同的网相互交换信息( 年龄 差距、角度光照影响等),逐渐的去掉这些对人脸识别不利因素 ,将两张照片映射到同一个可比的空间再进行比较。(例:要比较山东和川西的苹果哪个好吃,最好把它们都运到同一个地方,由同一个人来品尝,给出最佳答案)。

猜你喜欢

转载自blog.csdn.net/yingwei13mei/article/details/82025433