APP下载

一种基于CNN-SE-ELM的年龄和性别识别模型*

2021-05-18陈文兵李育霖陈允杰

计算机工程与科学 2021年5期
关键词:人脸卷积神经网络

陈文兵,李育霖,陈允杰

(1.南京信息工程大学数学与统计学院,江苏 南京 210044;2.中国气象局交通重点实验室,江苏 南京 210009)

1 引言

目前,人脸识别尤其是基于人脸图像的性别及年龄识别已经受到研究人员的极大关注。

针对年龄分类问题,Fu等人[1]详细评述了年龄分类方法。Kwon等人[2]通过计算皱纹出现的概率来建立特征与年龄之间的关系,提出了基于人类面部图像的年龄分类模型。Geng等人[3]提出了一种用于自动估计年龄的老化模式子空间(Aging Pattern Subspace)方法,同时提出了年龄流形学习方案,以提取面部老化特征,并设计局部调整的稳定回归量来预测人类年龄。Chang等人[4]引入一种依据面部图像成本敏感序数超平面排序方法来估计人类年龄,提出了一种分组估计融合多阶段学习系统的人类年龄分类模型。Li等人[5]使用一种新的特征选择方法进行年龄估计,也取得了较好的分类效果。尽管以上提到的这些模型和方法表现出了很多优点,但由于它们严重依赖诸如FG-NET[6]、MORPH[7]和FACES[8]等约束图像数据集,因此,尽管它们已经在用于年龄分类的约束数据集上得到了有效的验证,但不适于实际应用中的无约束图像。

针对性别分类问题,初期模型包括:Golomb等人[9]使用神经网络训练一小组面部图像数据集来对性别进行分类;Moghaddam等人[10]使用SVM对面部图像中的性别进行分类;Baluja等人[11]采用AdaBoost从面部图像中识别人类性别。中期模型包括:Toews等人[12]提出了一种视点不变的外观模型,用于对年龄和性别进行分类;Yu等人[13]提出了基于人体步态的性别分类研究和分析,同时重新使用线性判别技术对性别进行分类;Eidinger等人[14]不仅提供了新颖的数据集和多个评价基准来研究年龄和性别分类,而且还设计了一个分类管道,以充分利用可用的小数据;Khan等人[15]提出了一个用于性别和行动识别的语义金字塔,并且该方法是完全自动的,它不要求对人的上半身和面部进行任何注释;Chen等人[16]使用名字作为面部属性,并模拟了名字和面孔之间的关系,与其他方法相比,该方法利用名字-面孔关系提升了性别分类的精度;Han等人[17]使用通用结构来估计年龄、性别和种族。

近年来,许多研究人员利用DNN解决年龄及性别识别问题。Chen等人[18]提出一种由粗到细的方法并使用级联卷积神经网络实现无约束人脸图像的年龄估计。Duan等人[19]提出基于卷积神经网络(CNN)与极限学习机(ELM)检测人脸图像进行年龄-性别分类的混合模型。韩众和等人[20]提出一种使用Highway网络进行特征优化的卷积神经网络和极限学习机(ELM)的混合短文本分类模型。Hu等人[21]提出一种SENet(Squeeze-and-Excitation Networks)网络架构,该网络显式地建立特征通道之间的相互依赖关系模型,通过所谓的“特征重标定策略”,即利用Squeeze 和 Excitation 2个关键操作去学习特征权重,使得有效的特征图权重大,无效或效果小的特征图权重小,从而达到更好的结果。

虽然上面提到的大多数方法在年龄分类方面取得了较大的进展,但一方面,由于它们都约束于成像条件或者是非自动分类方法;另一方面,CNN-ELM模型对人脸图像能够实现基本的年龄和性别分类[13],但其分类或识别效果并不理想。本文提出的CNN-SE-ELM的混合分类模型,不仅适用于处理非约束人脸图像,还能够根据面部图像自动分类年龄和性别。在多种人脸数据集上的实验结果表明,该模型既提高了基于人脸图像的年龄和性别分类的精度,又有效地提升了计算速度。

2 CNN-SE-ELM混合结构分模块

2.1 卷积神经网络(CNN)

受到Hubel等人[22]对猫视觉皮层电生理研究的启发,卷积神经网络(CNN)被提出。而LeCun等人[23]建立了第1个将CNN用于手写数字识别的模型。近年来,卷积神经网络在多个领域均得到了广泛应用,如语音识别、人脸识别、通用物体识别、运动分析、自然语言处理和脑电波分析等。

卷积神经网络与普通神经网络的区别在于,卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。在卷积神经网络的卷积层中,一个神经元只与部分邻层神经元连接。在CNN的一个卷积层中,通常包含若干幅特征图(Feature Map),每幅特征图由一些矩形排列的神经元组成,同一幅特征图的神经元共享权值,这里共享的权值就是卷积核。卷积核一般以随机生成的较小数的矩阵形式进行初始化,在网络的训练过程中卷积核通过学习得到合理的权值。卷积核带来的直接好处是减少网络各层之间的连接,同时又降低了过拟合的风险。子采样也叫做池化(Pooling),可以看作一种特殊的卷积过程,通常有均值子采样(Mean Pooling)和最大值子采样(Max Pooling)2种形式。卷积和子采样大大降低了模型复杂度,减少了模型的参数。

2.2 SENet

SENet[21]的核心思想在于对CNN中的特征通道(Feature Channel)依赖性的充分使用和创新。它从卷积或者池化得到的特征图间的关系出发,即建立特征通道间的相互依赖关系模型,模型并未添加多余的空间维度来对特征通道进行融合,而是采用一种对特征权重重新分配的方法,即“特征重标定”。网络模型通过自我学习不断调整,可以得到每个特征图对应特征通道的重要程度,接着通过重要程度来提升有用特征的权重,并抑制对当前任务相关性较小或者无关特征的权重。总体而言,SENet网络可以根据全局信息有选择地增强有益特征通道,同时抑制无用特征通道,最终能够实现特征通道的自适应校准。

SENet网络主要包含挤压(Squeeze)、激励(Excitation)和点积(Scale)3个重要操作,图1所示为SENet网络基本结构图。

Figure 1 Basic structure of the SENet network图1 SENet网络基本结构图

式(1)是X→U的实现过程,Ftr为转换操作,它是CNN的常见操作。

Ftr:X→U,X∈RH′×W′×C′,U∈RH×W×C

(1)

其中,H′,W′,C′,H,W和C分别表示X和U的高度、宽度和通道数。

Ftr的计算如式(2)所示,其实质为卷积操作:

(2)

其中,vc表示第c个卷积核,xs表示第s个输入,uc表示U中第c个二维矩阵。

通过Ftr转换操作后得到U是一个三维矩阵,即C个大小为H×W的特征图。

2.2.1 挤压(Squeeze)

Squeeze操作,即网络通过多个卷积核运算后输出特征映射U(多个特征图),再利用全局平均池化操作对U的每个特征图进行压缩,将每个特征图大小变换成1×1的特征图,由此,C个特征图被映射为1×1×C的实数数列,图像被变换为一维特征数组。

(3)

多特征图U相当于图像的多个局部描述子,其统计信息描述了一幅图像的表现力,通过全局平均池化运算能够简单、快速地生成图像的全局感受野。

2.2.2 激励(Excitation)

Excitation操作,实质上是递归神经网络RNN中的门机制(Gating Mechanism),通过参数学习建立特征通道间的相关性,通过参数更新每一个特征通道相应的权重。利用Excitation操作能够全面地捕获通道间的依赖性。

为了捕获通道间的依赖性,使用式(4)定义门机制:

s=Fex(z,W)=σ(g(z,W))=σ(W2δ(W1z))

(4)

(5)

其中,激活函数采用Sigmoid函数,δ为ReLU激活函数。W1z为全连接操作,W1的维度为(C/r)×C,W2的维度为C×(C/r),r是一个缩放参数,s表示U中C个特征图的权重。

模型采用2个全连接层,也可以理解为1×1的卷积层,降维层参数为W1,降维比例为r,其目的是为了减少通道个数以降低计算量,经过一个ReLU激活函数及其后的参数为W2的升维层,即先降维再升维,不仅能够降低模型的复杂度,同时还能够发挥辅助泛化的作用。

2.2.3 点积(Scale)

Scale操作是将Excitation运算后得到的一维实数数列与特征映射U通过式(6)进行对应通道的点积运算:

(6)

其中,X=[x1,x2,…,xc]和Fscale(uc,sc)分别表示特征映射uc∈RW×H与标量sc之间的对应通道乘积,sc·uc即uc矩阵中的每个值都乘以其权重。通过Scale操作以实现有选择增强有益特征通道并抑制无用特征通道权重的目的。

2.3 极限学习机

传统神经网络算法网络节点的大多数参数均通过迭代算法即所谓的训练计算而得,迭代是传统神经网络的最大时间开销。Huang等人[24]提出一种ELM神经网络架构,该架构由1个输入层、1个单隐藏层和1个输出层组成,由于网络结构简单故网络的计算十分高效。

ELM神经网络具有很多优点:首先,它和BP神经网络算法有很大区别,BP神经网络通过后向传播来更新网络模型的参数,ELM神经网络在训练过程中,可以选择不可微函数作为激活函数;其次,基于梯度的学习算法有非常多的不足之处,比如学习速率大小不容易选择,易陷于局部网络最小化等,ELM神经网络明显地改进了这些缺陷,在分类任务中取得了更好的效果;同时,ELM神经网络在求取网络输出权值时仅仅需要计算一个广义逆,因此训练速度比基于梯度的学习算法快很多;最后,ELM的训练过程并不复杂,ELM只需要3步就可以完成整个学习过程。

对于单隐藏层前馈神经网络,本文给出极限学习机(ELM)算法。为方便描述,引入以下符号:

在数学上,标准的单隐藏层前馈神经网络模型为:

oj,j=1,2,…,N

(7)

其中,ωi·xj表示向量ωi和xj的内积。

(8)

表示式(7)模型能够零误差地逼近上述N个样本,即存在ω,β和b,使得:

(9)

利用矩阵表示,式(9)可以写成:

Hβ=T

(10)

其中,

(11)

(12)

极限学习机(ELM)的单隐藏层前馈神经网络简单学习方法概括如下:

(2)计算隐藏层单元矩阵H;

(3)计算输出权矩阵β=H+T。

3 构建CNN-SE-ELM混合模型

为了解决CNN-ELM应用于人脸图像年龄及性别识别时,识别率低、速度慢,同时受数据集约束等问题,通过研究分析CNN、ELM和SENet的结构及其特点,本文提出一种CNN-SE-ELM混合分类模型。该混合模型将人脸图像作为输入变量,利用CNN层提取人脸图像的基本特征;再利用SENet网络强化面部图像中能够最有效标识年龄及性别的那部分特征的提取能力;最后,利用误差最小化-极限学习机(EM-ELM) 作为分类器完成人脸图像年龄及性别分类。CNN-SE-ELM混合分类模型结构如图2所示,模型参数如表1所示。

3.1 CNN-SE-ELM模型结构组成及处理机制

如图2所示,模型结构组成及处理机制可描述如下:

输入:人脸图像的尺寸为112×92×3。

(1)CNN子网。

Figure 2 Structure of CNN-SE-ELM model 图2 CNN-SE-ELM模型结构

Table 1 Parameter description of CNN-SE-ELM model

主要由卷积层和池化层2部分组成,非线性激活函数为ReLU函数。

Conv1:第1层卷积层的卷积核大小为3×3,卷积核个数为16,卷积核移动步长为1,激活函数为ReLU,padding方式为same,像素点周围补一圈0,人脸图像尺寸变为112×92×16。

Pool1:池化层1对Conv1进行最大池化,尺寸为2×2,步长为2,核数不变,人脸图像尺寸变为56×46×16。

Conv2:第2层卷积层的卷积核大小为3×3,卷积核个数为32,卷积核移动步长为1,激活函数为ReLU,padding方式为same,像素点周围补一圈0,人脸图像尺寸变为56×46×32。

Pool2:池化层2对Conv2进行最大池化,尺寸为2×2,步长为2,核数不变,人脸图像尺寸变为28×23×32。

Conv3:第3层卷积层的卷积核大小为3×3,卷积核个数为64,卷积核移动步长为1,激活函数为ReLU,padding方式为same,像素点周围补一圈0,人脸图像尺寸变为28×23×64。

(2)SENet子网。

Squeeze:对Conv3后的人脸图像进行压缩,即对Conv3进行全局平均池化,尺寸为28×23,核数不变,人脸图像尺寸变为1×1×64,此时图像变为一维实数列,含有64个实数。

Excitation:对压缩后的人脸图像降维,大小变为1×1×4,核数为4,此时图像同为一维实数列,含有4个实数;对降维后的人脸图像升维,大小变为1×1×64,核数为64,此时图像同为一维实数列,实数个数变为64(此步骤即为每个特征通道生成权重,激活函数为Sigmoid函数;为降低计算复杂度,限制模型复杂度,先降维后升维,激活函数为ReLU函数)。

Scale:一维实数列与Conv3后的多个特征图进行对应通道乘积,核数为64,人脸图像尺寸变为28×23×64。

(3)EM-ELM分类器。

Input:把Scale输出的特征向量作为EM-ELM分类器的输入。

Hidden:通过分类训练测试,设置最小误差和最大隐藏层神经单元数,激活函数为Softmax函数。

Output:对于性别,输出层连接2个神经元;对于年龄,输出层连接8个神经元。

输出:对于性别输出2个分类,对于年龄输出8个分类。

3.2 CNN-SE-ELM模型描述

CNN-SE-ELM混合模型流程描述如下:

(1)对人脸图像进行预处理。

Step 1从人脸图像中检测出人脸,并将其裁剪下来。

Step 2对剪裁下来的人脸图像进行大小格式归一化处理。

Step 3对数据进行编码分类。

(2)训练CNN网络模型。

Step 1对网络模型进行初始化,权值和偏置随机赋值。

Step 2获得输入样本xi和相对应的输出标签ti。

Step 3输入的样本xi经过卷积层以及下采样层的处理,然后采用ReLU激活函数对其结果进行非线性化处理。

(3)嵌入SENet网络模型。

Step 1将CNN层的输出作为SE网络的输入,通过Squeeze操作(式(13))对zc进行平均池化压缩为一维实数列。

(13)

Step 2通过Excitation操作(式(14))为每个特征通道生成权重,激活函数为Sigmoid函数;为降低复杂度,先降维后升维,激活函数为ReLU函数。

s=Fex(z,W)=σ(g(z,W))=σ(W2δ(W1z))

(14)

(15)

其中,W1z为全连接操作,W1的维度为(C/16)×C,W2的维度为C×(C/16),s表示U中C个特征图的权重。

Step 3然后通过Scale操作(式(16))即特征映射uc∈RW×H和标量sc之间的对应通道乘积得到输出。

(16)

最后通过全连接层得到输出层的分类结果yi。

Step 4根据网络的输出yi和ti目标的输出误差Et,利用AdamOptimizer调整网络参数。

(17)

Step 5迭代训练,然后通过反向传播重复以上所有步骤,直到网络收敛后停止。

经过以上步骤的训练,最终得到了一个收敛状态的CNN+SENet网络。

(4)将SENet网络的输出作为EM-ELM分类器的输入,从而得到分类结果。

Step 1初始化一个含有L0个隐藏层节点的SLFN,L0为人为设定的小正整数。

Step 2选定隐藏层的激活函数,对于性别采用Sigmoid激活函数,对于年龄采用Softmax激活函数,并计算输出矩阵H1。

Step 3计算相应的残差e(H1):

(18)

Step 4令k=k+1;

Step 5随机增加δLk-1个隐藏层节点,δ为一个常量,那么总的隐藏层节点数变为Lk:

Lk=Lk-1+δLk-1

(19)

相应的隐藏层输出矩阵Hk+1为:

Hk+1=[Hk,δHk]

(20)

Step 6计算相应残差e(Hk+1)。

循环Step 4~Step 6,直到不满足给定条件,停止学习。

综上,CNN-SE-ELM模型首先进行人脸图像的预处理,即:(1)对输入的人脸图像进行检查并裁剪提取人脸区域;(2)对人脸区域图像进行归一化处理。接着,通过CNN层卷积操作对人脸区域图像进行特征提取。然后,进入SENet网络层,其中,Squeeze操作采用全局平均池化操作使其具有全局的感受野,压缩图像变为一维。Excitation操作采用门机制,同时限制模型复杂度,辅助泛化先进行降维再进行升维。最后,通过EM-ELM分类器对人脸图像进行分类。

4 实验准备与结果分析

本文实验在Windows 10环境中实施,处理器为Intel Core i5-7300HQ CPU 4核处理器,内存为32 GB。编程语言为Python 3.6,深度网络结构基于Tensorflow-gpu 1.0.0,图像处理采用OpenCV 3.4.3。实验拟从基准数据集、评价指标、模型训练与测试、模型结构的变化分析、与近期流行方法对比等多角度展开。

4.1 实验数据集

实验所用数据集为IMDB-WIKI人脸数据集和Adience人脸数据集。IMDB-WIKI人脸数据集由IMDB数据集和Wikipedia数据集组成,其中IMDB人脸数据集包含了460 723幅人脸图像,而Wikipedia人脸数据集包含了62 328幅人脸图像,总共523 051幅人脸图像,IMDB-WIKI人脸数据集中的每幅图像都被标注了人的年龄和性别,是迄今为止最大的年龄预测公共数据集。Adience数据集是根据志愿者通过智能手机拍摄后上传的照片进行整合得到的,其图像受到光照、噪声、姿态和遮挡等方面的影响。Adience人脸数据集总共有26 580幅图像,包含对象共2 284个,对于年龄和性别分类的研究有着重要的意义。

本文从IMDB-WIKI人脸数据集中选取数量相等的男女人脸图像,先将男女人脸图像分开,再进行各年龄段的划分,最终选出共16 000幅图像,其中男性人脸图像8 000幅,女性人脸图像8 000幅,将年龄段分为8类,分别为:0~2,4~6,8~13,15~20,25~32,38~43,48~53,60~100,即每个年龄段男女人脸图像各1 000幅。从Adience人脸数据集中共选出19 487幅人脸图像,将性别分为2类,即男、女,其中男性人脸图像共8 192幅,女性人脸图像共9 411幅。将年龄段分为8类,分别为:0~2,共1 427幅;4~6,共2 162幅;8~13,共2 294幅;15~20,共1 653幅;25~32,共4 897幅;38~43,共2 350幅;48~53,共825幅;60~100,共869幅。2个数据集均通过10折交叉验证法(10-Fold Cross Validation)进行训练集和测试集的划分,即将所有数据随机划分为10个子集,其中9个为训练集,1个为测试集,进行轮流实验,取结果的平均值进行评判。

4.2 评价指标

本文采用准确率(accuracy)、精确率(precision)、召回率(recall)和综合评价指标F1-score来评价在多种人脸数据集上CNN-SE-ELM混合模型对年龄性别分类的性能。

(1)准确率(accuracy),即分类模型所有判断正确的结果占所有结果的比重:

(21)

其中,TP为被判定为正类的正样本数量,TN为被判定为负类的负样本数量,FP为被判定为正类的负样本数量,FN为被判定为负类的正样本数量。

(2)精确率(precision),又名查准率:

(22)

(3)召回率(recall),即查全率:

(23)

(4)F1-score值。F1-score值对精确率和召回率全部进行了加权,F1-score的取值为0~1,1代表模型的输出效果最好,0代表模型的输出效果最差。

(24)

公式进行转化后为:

(25)

4.3 模型训练与测试

本文首先对人脸图像进行预处理,通过OpenCV自带的人脸级联分类器Haar来识别图像中的人脸并裁剪下来,为防止图像变形将裁剪下来的人脸图像补成相应比例之后压缩成112×92大小,将图像格式由.jpg转换为.bmp,如图3所示。

Figure 3 Face image图3 人脸图像

将预处理之后的图像以数组形式加载到内存,并为每一类样本数据标注标签值。采用One-Hot编码的方式对样本进行编码,性别标签为:0和1,即为男(1,0)和女(0,1),年龄标签为:0,1,2,3,4,5,6,7,如果输出人脸图像年龄段为第3段,即为(0,0,1,0,0,0,0)。归一化图像数据即对数据集先进行浮点化再进行归一化。

对卷积神经网络主要参数进行初始化,训练步数train-epochs置为30;批次训练数据大小batch-size取256;加入批数据标准化层,提升网络收敛速度。为了防止过拟合,将drop-out的属性drop-prob置为0.3。网络模型优化采用交叉熵损失函数,利用TensorFlow 的AdamOptimizer优化器对其进行优化。

针对SENet网络层,激活函数采用Sigmoid函数,为每个特征通道生成权重;为了降低计算复杂度、限制模型规模,先降维后升维,激活函数采用ReLU函数。

对于EM-ELM分类器,性别分类采用激活函数Sigmoid,年龄分类采用激活函数Softmax。对IMDB-WIKI人脸数据集,EM-ELM的最大隐藏层节点数设置为16 000;对Adience人脸数据集,EM-ELM最大隐藏层节点数设置为19 000。如表2所示,期望学习误差设为0.1,初始隐藏层节点数初始个数为1, 即每次递增前一节点数。图4和表2给出了ELM随机设置神经元个数和EM-ELM自动取得最优隐藏层节点个数的对比,显示ELM对神经元的变化其分类准确率呈现不规则的波动,无法准确地设置一个最优的隐藏层节点数,而EM-ELM需要较少人工干预,能够自动取得最优的隐藏层节点个数,从而使得网络分类结果更加准确。表2显示了各数据集最大隐藏层节点数。

Table 2 Dataset size and EM-ELM maximum hidden layer node settings表2 数据集大小和EM-ELM最大隐藏层节点设置

Figure 4 Effect of the number of ELM hidden layer neurons on classification performance图4 ELM隐藏层神经元个数对分类性能的影响

图5和图6所示分别是IMDB-WIKI和Adience人脸数据集上的交叉熵损失函数曲线和准确率曲线,曲线显示经过多个迭代步后,交叉熵损失函数趋于0,准确率逐渐提高。

Figure 5 Cost function curve of CNN-SE-ELM model after 3 000 epochs 图5 CNN-SE-ELM模型迭代3 000次成本函数变化曲线

Figure 6 accuracy curve of CNN-SE-ELM model after 3 000 epochs 图6 CNN-SE-ELM模型迭代3 000次准确率曲线

4.4 分析与对比

图7显示了年龄预测部分分类结果。从图7中可以看出,第1幅图像应裁剪女性人脸,却错误地将男性人脸裁剪下来,导致分类错误。原因是:(1)一幅人脸图像中含有多个人脸;(2)多个人物年龄存在差异性;(3)裁剪过程中未将对应人脸裁剪下来。

图8显示了性别错分类结果,错误集中在对婴儿及儿童的性别分类。而图9显示了年龄错分类结果,错误结果主要是由于图像本身模糊、分辨率较低及遮挡等因素。

混合模型结果如表3和表4所示。

表3和表4表明,CNN-SE-ELM模型在不同数据集上对性别有着良好的分类性能,但对于年龄分类性能一般,尽管其对年龄分类结果并不理想,但与其他网络模型对比,训练时长大大缩短。为了比较CNN-SE-ELM模型与近期最受欢迎的VGG-Face-SVM[25]、CNN+SVM[26]和VGG16-DEX-IMDB[27]的性能,在数据集上分别对3种模型进行实验,表5和表6分别是各模型在Adience人脸数据集上对性别、年龄分类的训练时长、训练准确率、测试时长和测试准确率的对比。

Figure 7 Comparison of actual and predicted values of face images图7 随机人脸图像真实值与预测值对比

Figure 8 Comparison of actual and predicted gender values of face images图8 人脸图像性别真实值与预测值对比

Figure 9 Comparison of actual and predicted age values of face images图9 人脸图像年龄真实值与预测值对比

Table 3 Comparison of gender classification indicators of CNN-SE-ELM model on two face datasets表3 CNN-SE-ELM模型在2个人脸数据集上性别分类指标对比

Table 4 Comparison of age classification indicators of CNN-SE-ELM model on two face datasets表4 CNN-SE-ELM模型在2个人脸数据集上年龄分类指标对比

Table 5 Comparison of gender classification of different models on Adience face dataset表5 Adience人脸数据集上不同模型对性别分类性能对比

Table 6 Age classification comparison of different models on Adience face dataset表6 Adience人脸数据集上不同模型对年龄分类性能对比

表7和表8为采用不同结构模型对分类结果的影响,本文模型组合CNN和SENet网络架构,并在FCN层采用ELM进行分类,通过对CNN、CNN-ELM和CNN-SE-ELM 结构进行对比,结果表明CNN-SE-ELM结构分类显示了更高的可靠性和分类准确率。

Table 7 Comparison of gender classification accuracy results of different structures of the proposed model表7 本文模型不同结构的性别分类准确率结果对比

通过多角度评估本文提出的CNN-SE-ELM模型,即在2个人脸基准数据集IMDB-WIKI和Adience上,对采用不同结构的模型进行实验观察与分析,实验结果表明,CNN-SE-ELM模型在2个基准数据集上对人脸性别及年龄分类表现稳定;而在同一人脸数据集,如Adience人脸基准数据集上,通过与近期流行的模型VGG-Face-SVM、VGG16-DEX-IMDB进行对比,结果表明在人脸图像性别和年龄分类问题上,CNN-SE-ELM模型在识别精度和识别速度上均优于以上对比模型。

Table 8 Comparison of age classification accuracy results of different structures of this model表8 本文模型不同结构的年龄分类准确率结果对比

5 结束语

本文提出一种CNN-SE-ELM混合模型,与其他2种当前最流行的网络结构相比,本文模型在训练过程中不仅能够有效地提取更具代表性且最优的特征映射,而且还能够极大地提高模型训练和识别的速度。在2个基准人脸数据集IMDB-WIKI和Adience上对3个模型进行多角度评估,实验结果表明本文模型具有更高的识别精度和效率。

未来拟在以下2个方面进一步开展研究工作,(1)研究新的深度学习模型以期更好地改进人脸图像识别年龄及性别模型;(2)将对人脸识别与其他研究领域进行融合,如加入人物表情及种族等因素,以建立基于人脸图像识别更加多样化的智能识别模型。

猜你喜欢

人脸卷积神经网络
基于3D-Winograd的快速卷积算法设计及FPGA实现
有特点的人脸
一起学画人脸
神经网络抑制无线通信干扰探究
从滤波器理解卷积
三国漫——人脸解锁
基于傅里叶域卷积表示的目标跟踪算法
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定