基于改进EfficientNet的轻量化性别与年龄段估计算法

2023-11-20 07:14罗洪伟王建博袁华清刘桂华
传感器与微系统 2023年11期
关键词:多任务年龄段人脸

罗洪伟,刘 波,姚 虎,王建博,袁华清,刘桂华

(1.深圳市朗驰欣创科技股份有限公司,广东 深圳 518000;2.天津大学电气自动化与信息工程学院,河北 天津 300072;3.西南科技大学信息工程学院,四川 绵阳 621010)

0 引 言

基于人脸图像的性别识别和年龄估计技术在辅助人口统计、社会学研究、医学等众多领域有着广泛的应用,具有极其重要的研究意义和价值[1]。传统的性别识别方法和年龄估计主要通过手工提取面部特征来实现,性别识别主要通过人脸图像的几何结构[2]或外观纹路[3]作为识别依据;年龄估计则主要通过对人脸图像表观进行建模来实现,建模可分为主动表观模型[4]和主动形状模型[5]。中期人们将机器学习技术和手工特征相结合[6,7],使得算法具有更好的鲁棒性。

由于缺乏足够精度与效率,在人脸图像上进行性别、年龄等生物学特征提取并没有获得显著的应用型发展。深度学习的崛起使人脸属性分析技术精确稳健地走向应用化成为可能[8]。卷积神经网络(convolutional neural network,CNN)作为深度学习领域最具有代表性的算法之一,被学者们广泛运用于人脸图像属性分析任务[9~12]。随着残差网络的提出,CNN进入了网络层不断加深、性能不断优化的辉煌时代,但同时也带来了计算量大,难以满足实际应用的问题,因此,涌现出了大量轻量级CNN 立志于达到精度与速度的相对平衡[13,14]。其中,以EfficientNet-B0 为基线模型的扩展而成的EfficientNet 系列模型在效率和准确性上战胜了当时所有的CNN模型。

本文通过对EfficientNet-B0 基线模型进行改进,将其应用于基于人脸图像的性别识别和年龄估计任务,在保证网络轻量化的同时,进一步提升了算法的鲁棒性和检测效率。

1 轻量级CNN EfficientNet-B0

EfficientNet-B0为谷歌大脑团队通过强化学习算法生成的基线模型。如图1 所示,该网络主要由移动倒置瓶颈卷积(mobile inverted bottleneck convolution,MBConv)模块堆叠而成,共有16个,另有卷积(Conv)层2个,还包括1个全局平均池化层和最后的分类层。

图1 EfficientNet-B0 网络结构

该模型与同阶段常用CNN模型在ImageNet上识别效果对比如表1 所示。可知相比传统网络,EfficientNet 系列网络在准确率和内存占用上均有较大提升,可视为深度学习领域划时代的里程碑。

表1 EfficientNet系列模型性能对比

相比其他轻量级CNN 算法,EfficientNet-B0 在模型内存、检测速度、识别准确率都有大幅优势,只需近1/3 的内存占用量却达到了几乎同样的识别准确率,证明Efficient-Net-B0可作为一种优秀的轻量级卷积特征提取网络。

2 基于改进EfficientNet的轻量化性别与年龄段估计算法

基于人脸图像进行性别识别和年龄段估计任务的本质为图像分类和识别问题,选择性能优良的基准算法可以提高系统运行的速度与准确度,减少漏检和误检。本文选取轻量化CNN EfficientNet-B0 算法为特征提取框架,构建人脸图像性别识别与年龄分类模型系统。

2.1 基于多任务学习的网络优化

多任务学习(multi-task learning,MTL)是指2 个或2 个以上的任务共同学习且联合训练的过程,旨在通过各任务间的信息共享提升每个任务的性能和泛化能力。现有的大多只能处理单一任务的CNN,当面对多属性分析问题时,常常需要多个深度模型的协同作用,严重增加系统的复杂度与额外时间开销的方法,相比之下多任务学习无疑具有更低的学习成本和鲁棒性。

在多任务学习中,有2种参数共享方式,分别为硬参数共享和软参数共享。软参数共享适用于任务间的相关性不高的情况,硬参数要求任务间具有强相关。硬参数共享通过在所有任务底层共享浅层卷积特征层,各任务顶层参数独立的方式实现多任务学习,其优点在于当学习的任务越多,原始任务过拟合可能性越小。

本文将性别识别和年龄段估计问题视为目标分类问题,并且二者采用的数据集相同,任务间具有强相关性:年龄和性别的浅层特征一致,输入数据一致,均为64 ×64 对齐后的灰度图像,因此,选择硬参数共享的方式,基于EfficientNet-B0网络构建多任务学习CNN模型,实现多任务学习,提高学习效率和鲁棒性。

将EfficientNet-B0网络分为Front(前)和Back(后)两部分,EfficientNet Front作为人脸图像浅层卷积特征提取,其输出结果被性别识别通道和年龄识别通道所共享。EfficientNet Back作为年龄识别通道深层卷积特征提取,网络结构示意如图2所示。

图2 基于多任务学习的年龄与性别识别网络结构

模型输入通过EfficientNet Front特征提取网络提取年龄和性别识别任务中的共同特征,该部分首先经过一个标准的3 ×3 Conv块后,进入到6 个串联的MBConvBlock中,实现多维通道内的信息融合和深层特征提取。后续网络针对性别识别和年龄段估计两种任务间的特殊性而作了不同区分。

根据前人研究,性别识别任务往往不需要过深的CNN就能达到比较优秀的识别率,相反,当网络层不断加深,其性能反而降低。因此,在经历过共享浅层卷积层后,性别通道只需简单的经过一个3 ×3 的Conv 块以实现信息的提取,就能直接通过全局平均池化降到一维,为实现SoftMax的激活做准备。

年龄段识别任务往往相比性别识别要复杂的多,这在网络设计上也有体现。除了共有的浅层特征提取外,年龄通道还需6个串联的MBConv 模块,以实现更加丰富的语义理解和深层卷积特征提取。其中,1 ×1 Conv通过极少的参数量实现了对不同通道信息的加权以融合多种特征。最后同样使用全局平均池化层替代FC层以实现模型运算量的下降,后续处理考虑年龄序数问题,也不同于性别识别通道,具体实现可参考下文。

2.2 基于序数回归的年龄网络优化与损失函数计算

由于年龄网络通道的输出结果为序数,并不适用于交叉熵损失。为了直接利用经过充分研究的分类算法,本文将有序回归转换为一系列二元分类子问题。

具体来讲,对k=Cls分类的序数回归问题转换为k-1个简单的二元分类子问题。每个子问题rk∈{r1,r2,…,rk-1}内部,通过一个二元分类器来预测样本的yi值是否大于rk

式中为第k类预测值,rk为第k类子任务所属标签(如r1代表1)。则真实年龄预测值Predict_Age 为每个二分类子问题预测结果之和

式中fk(x)为第k个子任务的输出值。

由于每个子问题内部是相互独立的二分类问题,因此内部可使用交叉熵损失进行计算,则N张输入图像的年龄损失为

式中 1{·}如内部为真,输出1,否则为0;oi为第i张图像的年龄输出值;yi为第i张图像的年龄真实值(对于每个子任务yi∈{0,1});wi为第i张图像的权重;W为网络模型参数。

对于年龄识别而言,其损失函数为二分类的交叉熵损失如式(4)所示

考虑年龄和性别两种任务训练难度不同,所以需要增加额外参数去平衡其训练参数,经测试,在lossAge占用70%的训练权重时,两种任务能达到相对均衡的识别准确率与训练效果。综上,该多任务学习的总损失如式(5)所示

3 实验与结果分析

3.1 数据集

本文选择最贴近现实环境且样本量丰富的Adience作为性别识别和年龄段估计算法的数据集。相比于其他数据集,该数据集更加贴合现实意义,获取于智能手机和其他智能设备并且未经任何人工处理。数据集中共采集了2 284个人物的26 580张照片,每张照片都标有性别和分为0~2,4~6,8~13,15~20,25~32,38~43,48~53,60~100 等8类的年龄段。

3.2 数据预处理

数据集部分样例在图像采集时不可避免地存在光线太明或太暗、模糊以及各种噪声等问题,如果在训练之前能够把某些复杂的噪声处理掉,将会大大提高训练模型的准确率,同时由于数据集背景复杂,在训练过程中会增加过多无用参数和计算量,因此在图像特征提取前,需要进行预处理。本文采取灰度图转换、Haar 人脸检测和对齐、图像标准化和利用仿射变换(affine transformation)进行数据增强等步骤以提升后续网络的训练效果。其中,灰度图的转换原理如心理学式(6)

其本质是将人眼对于彩色的感知转换为对亮度的感知。为了节省计算时间,考虑将浮点数转为整数,通过移位实现对公式的优化

3.3 实验结果分析

实验的深度神经网络搭建在Pytorch深度学习框架上,运用Python语言编程实现,操作系统为Ubuntu 16.04TLS,显卡为NVIDIA TITAN XP,并同时安装了CUDA11.1 以支持GPU的使用。

对于人脸检测,测试了LFFD、Centerface、Ultraface三种轻量级人脸检测算法在WIDER FACE 数据集上的性能。Ultraface检测测试图片仅耗时17 ms,不仅低于OpenCV 的1 821 ms,也优于LFFD(164 ms)、Centerface(322 ms)等先进算法。结合表2可知,Centerface网络在准确度指标上表现最好,漏检率在日常使用中小于10%,LFFD其次,而Ultraface漏检率为30%左右,虽然高于其他算法,但也满足了一般情况下的使用需求。由于本文更加看重算法的检测速率的原则,可以看到只有Ultraface达到了实时标准(FPS >25),而Ultraface在复杂背景下对小目标的轻微漏检现象也减轻了后续人脸属性信息提取网络的工作量,因此,本文选择Ultraface作为最终的人脸检测算法,基于检测到的人脸图像进行表情识别与年龄估计,使系统实时性运行成为了可能。

表2 多种人脸检测框架准确率对比%

模型训练开始时,将原始EfficientNet 算法权重设为初始权重,新加模块初始权重为0~1 的随机数,以减少训练时间成本并加快模型收敛速度。采用批量随机梯度下降算法优化损失函数,学习率设为0. 001,权重衰减值设为0.000 5,批量大小设为32,动量系数设为0. 9,共迭代60次。

模型改进前后在训练集损失值变化如图3所示,其中,虚线为模型改进前,实线为模型改进后,可知,模型在约30次迭代后收敛,改进后模型明显包围改进前,证明改进后模型的优越性。

图3 模型改进前后训练集损失值对比

实验采用各类别均值平均精度(mean average precision,mAP)和F1分数作为模型检测精度的评价标准[15],二者可表示为

式中 Presion为查准率,Recall为召回率,N为所有类别样本数,N(c)为C类别样本数,APc为C类别准确度。使用模型内存、平均检测帧耗时作为检测速度的评价标准。

测试集样本共2 521 张图像,其中,婴幼儿占了5%左右,男性与女性占了剩余95 %,男性数量比女性数量多20%。由于Adience数据集本身并不是均匀分布的原因,随机选取的测试集也在各年龄段上的分布不同,年龄段(25~32岁)中的样本数量占了整个测试集的32.4%,年龄大于48周岁的样本占10%,年龄段(0~2 岁)的同样占了5%,其余年龄段平分剩余的53%左右。

表3给出了该测试集在查准率、召回率、F1 三大评价指标体系下的性别分类的详细数值。可知相对来说,算法对婴幼儿预测效果最好,其次是女性。男性预测情况低于前两种,但召回率却是最高的,由此可知算法在男性类别中错检问题比漏检问题更加严重。

表3 性别任务中各指标体系下算法性能%

表4则是算法在各年龄段上的性能体现。整体表现情况稍微不如算法在性别任务中的表现,这也符合固有认知。算法在年龄段(48~53 岁)漏检率和错检率都高于其他年龄段,本文推测其原因是该年龄段特征更加偏向相近年龄段,造成算法识别混淆。该原因也导致了年龄段(15 ~20岁)和年龄段(38~43 岁)的识别效果较低于其他年龄段。总体来讲,算法在低龄年龄段中识别成功率高达92%,在其他年龄段识别效果与各类别类外间距成正比。

表4 年龄任务中各指标体系下算法性能%

针对测试数据集分别使用EfficientNet-B0 模型与改进后模型进行对比,结果如表5所示。由该表可得,本文所设计的基于多任务学习的性别识别与年龄段估计网络相比其他传统算法具有一定的性能优势。

表5 模型改进前后测试集性能对比(性别/年龄)

首先在平均准确率上提高了7.95%,对于性别任务,算法准确率达92%,优于当前最优网络EfficientNet-B0 的86.5%,提高了5.5%;对于年龄段识别任务,算法准确率达87.4%,比当前最优网络高10.4%。其次凭借多任务学习的性能优势,在模型内存和检测速度上也远远优于传统算法,改进算法由人脸图像预测性别和年龄段任务在TX2平均检测帧耗时只需2 s,比以检测效率为优势的Efficient-Net节省了51.7%的时间,同样在该指标上远远领先于传统机器学习算法和残差网络,分别为它们的34. 6 %和29.4%,算法模型内存占用只占EfficientNet的54.68%,为实现嵌入式端实时的性别和年龄检测奠定了坚实基础。

就本文改进算法的优缺点而言,召回率明显低于查准率,对实际应用产生的影响是漏检现象高于错检。

图4 给出了算法在自建数据集上的识别效果,可知性别与年龄段基本识别正确,与人眼观测结果相当,这证明了算法可运用于日常生活和辅助智能检测领域。

图4 算法识别效果样例

4 结 论

本文以研究性别识别与年龄段估计算法为中心,利用性别识别和年龄估计任务的共通性,提出了一种共享浅层卷积特征的多任务学习网络,网络以裁剪后的EfficientNet-B0为卷积特征提取层,并将年龄判别中的序数回归问题转换为多个二分类子问题以优化损失函数,改进后的网络在实现协同训练减少运算开销的同时,识别准确率提高了7.95%。

猜你喜欢
多任务年龄段人脸
不同年龄段妊娠早期妇女维生素D含量水平分布
各年龄段人群对网上健康教育的认知和期望的调查报告
有特点的人脸
适合各个年龄段的黑胶爱好者 Sony(索尼)PS-LX310BT
基于中心化自动加权多任务学习的早期轻度认知障碍诊断
三国漫——人脸解锁
基于判别性局部联合稀疏模型的多任务跟踪
基于多任务异步处理的电力系统序网络拓扑分析
马面部与人脸相似度惊人
从认知角度看不同年龄段儿童音乐学习能力