APP下载

批量分组异构的残差人脸表情识别网络*

2022-10-18王均峰桑海峰

微处理机 2022年5期
关键词:集上识别率残差

王均峰,桑海峰,范 佳

(沈阳工业大学信息科学与工程学院,沈阳 110870)

1 引言

人脸表情识别作为人工智能领域中重要的研究方向,自问世以来一直受到国内外研究者的关注。20世纪80年代前后,Ekman和Friesen分析了六种基本表情的特点,提出了面部行为编码系统,用于检测面部肌肉的变化,将其与表情联系起来[1]。1991年,Mase和Pentland二人利用面部表情肌肉运动引起的光流变化表征表情,对高兴、愤怒、厌恶和惊讶四种表情进行识别[2]。光流法也是动态特征提取的重要方法。此外,在表情特征提取工作中,最常用的是局部二值模式[3]和Gabor小波变换[4],结合SVM等特征分类算法[5],效果更好。到了2012年,Alexnet在ImageNet大规模视觉识别竞赛取得了第一名的成绩,开辟了卷积神经网络的研究热潮[6]。而对于表情识别而言,卷积神经网络及其变体的提出也意味着表情识别自特征工程阶段走入网络工程阶段。在国内,张文萍等学者,采用指数损失减小类内距离的方法改进了Island损失函数,提高了网络的测试性能与泛化性能[7]。在传统卷积神经网络的表情特征提取阶段,存在着感受野不足、部分关键信息丢失的情况。对此,Szegedy等学者在2014年提出的GoogLeNet[8],采用并行架构,通过不同卷积操作,获得了更加丰富的信息,避免了关键信息的丢失。

本研究基于谢赛宁等学者提出的批量残差神经网络ResNeXt[9],提出批量分组异构的残差人脸表情识别网络He-ResNeXt。

2 网络设计

所设计网络不同于传统的ResNeXt操作,即残差块对于输入特征图分为32个并行通道进行同样的卷积操作,先1×1卷积降维,然后3×3卷积提取特征,最后1×1卷积升维;He-ResNeXt则是将残差块针对输入特征图的32个通道分为3组,各含11、10和11个并行通道,同组通道内卷积相同,不同组不同,经过卷积操作后,进行组内优先特征融合。不同卷积操作可以获得更多的有效信息,提升特征提取能力,而针对于He-ResNeXt的组内优先特征融合可以避免直接融合特征带来的信息混乱。

由三个He-ResNeXt残差块堆叠构成的He-Res NeXt-29网络结构如图1所示。

图1 He-ResNeXt-29网络图

整个网络共有四个卷积块,除了第一个卷积块只有一层1×1卷积,其他均由三个He-ResNeXt残差块堆叠构成用以提取特征,经最终1×1卷积下采样,卷积块增加两倍通道数,保持层间信息流通。假设最初输出特征图大小为FER2013数据集图像尺寸48×48,经过三个卷积块提取特征,从48×48降至12×12,最后接入全局平均池化输出的最终特征向量,通过Softmax进行分类。全局平均池化输出对减少参数和降低过拟合风险具有很大实际意义[10]。

3 相关网络

3.1 He-ResNeXt残差块设计

何恺明等在2016年针对深度网络的退化问题提出深度残差卷积网络[11],这一网络由很多残差块组成,其中的第l个残差块的结构如图2所示。

图2 何恺明2016年ResNet的第l个残差块结构

在这其中,残差块的最基本思想首次被提出:通过残差连接来克服网络变深带来的梯度消失。残差块执行以下计算:

其中xl和xl+1是第l个单元的输入和输出,F表示一个残差函数。在该网络中,h(xl)=xl代表一个恒等映射;f代表激活函数ReLU。

假设f也是一个恒等映射,则xl+1=yl,可得:

通过递归,对于任意深的残差块L和任意浅的残差块l,可以得到:

从上式中可以看出任意残差块L和l之间都具有残差特性。假设损失函数为ε,由反向传播的链式法则可以得到:

从式(5)中可以看出,即使权重任意小,也不可能出现梯度消失的情况[12],这就避免了梯度消失带来的网络退化。

各类残差块结构的对比如图3所示。

图3 残差块结构对比

原始残差块ResNet结构如图3(a)所示,方框中三个数据的意义是:输入通道数、卷积核大小、输出通道数。ResNeXt结构如图3(b),它用一种平行堆叠相同拓扑结构的残差块代替原来ResNet的三层卷积的残差块,在不明显增加参数量级的情况下提升了模型的准确率,同时由于拓扑结构相同,便于模型移植。在同为256-d的输入下,可以看到ResNeXt对于ResNet的改进在于:不再采用直接卷积,而是把输入特征图分别送入32个同样的并行通道,最后再相加特征图输出,通道的卷积核都是相同的1×1、3×3和1×1。此模型提出了一个基数的概念,在图中实例下就是32条通道。研究者认为这个基数带给了ResNeXt更好的精度与效果,另外在加深或加宽网络的收益开始递减时,增加基数也是获得精度的一种更有效的方法。本研究提出的He-ResNeXt残差块结构如图3(c),它是基于ResNeXt的设计,做出了并行架构上的修改。

残差块设计希望通过分组进行不同卷积的方法从输入特征图中获得更加丰富有效的信息,据此将ResNeXt的32个并行通道分成3组,组内通道数分别为11、10和11。其中第一组的11个通道经过两次1×1卷积,另一组的11个通道先经过1×1卷积,再经过5×5卷积;10通道的那组与原来基本相同,但是为了不过度增加网络参数,将原来的3×3卷积改成先进行1×3卷积再进行3×1卷积。

通过异构的卷积操作可以获得不同尺度的特征,再进行组内优先特征融合,这样在基本不增加网络参数的基础上,可以使网络观察到更多尺度的特征,提升了网络特征提取能力。

3.2 组内优先特征融合

在ResNeXt中,即便并行通道共计32条,但这32条通道采用的卷积方式相同,所以可以采用直接融合的形式,用密集成分来近似最优的局部稀疏结构。其融合策略结构如图4所示。

图4 多尺度融合结构

图中的F(x)可以表示为:

式中,xi表示第i个输入特征图;fi(xi)表示第i个输出;D为输入特征图个数;F(x)是输出特征图。

对于He-ResNeXt残差块共有3组共计32个通道并且有三种卷积操作的情况,直接进行多尺度特征融合容易带来信息混乱,影响信息提取能力。为了避免过多同种卷积带来的信息混乱,残差块先在相同通道组内优先特征融合,然后进行不同通道组间特征融合,结构如图5所示。其特征融合方式可以表示为:

图5 组内优先特征融合

其中,xij表示第i组第j个通道的输入特征图;fij(xij)表示第i组第j通道输出特征图;G为分组组数;g为每组通道数。

对于He-ResNeXt残差块,其分组组数G=3,每组通道数g=11、10、11。通过组内优先融合的方式,避免了多种卷积方式可能带来的信息混乱,提升了信息提取能力。

4 实验与分析

4.1 数据集及数据增强

为了验证He-ResNeXt的有效性,分别在CK+、FER2013和JAFFE三个公开数据集上进行实验评估。其中,CK+数据集是CK(Cogn-Kanade)数据集的扩展。该数据集包含981个样本,来自123个受试者,实验使用7分类标注,分别为愤怒、轻视、厌恶、害怕、高兴、悲伤、惊讶。样本均为正前方拍摄,受试者均无妆容、不佩戴眼镜,但年龄、肤色、人种、国籍、光照条件等各不相同,样本的分辨率有640×480、640×490和720×480三种。该数据集在人脸表情识别研究中应用范围最广。

FER2013人脸表情数据集是一种大型互联网数据集。该数据集包括35887张人脸表情灰度图像,分为训练图像(28709张)、公共验证图像(3589张)和私有验证图像(3589张)。所有图像使用7种标签进行分类标注,分别为愤怒、厌恶、恐惧、高兴、悲伤、惊讶和中性。受试者的年龄、妆容、头部姿态、背景、光照条件差异很大,图像的分辨率均为48×48。该数据集更接近自然状态,且其样本数量较多,很多人脸表情识别研究都选择该数据集进行训练和测试。

JAFFE数据集由日本ATR于二十世纪末创建,是识别亚洲人表情的有效工具。该数据集共213个人脸表情样本,来自10位日本女性,有愤怒、厌恶、恐惧、高兴、悲伤、中性和惊讶七种表情,每人都有中性表情样本和三至四个基本表情样本。受试者均为女性,年龄、头部姿态、光照等条件无较大差别,表情稍显夸张,样本均为256×256的灰度图片。该数据集数量较少且简单,目前人脸表情识别研究在此数据集上已有很高的识别率。

实验采用的均为七分类数据集,部分图像展示如图6。其他关键指标对比如表1。

图6 数据集样本示例

表1 各数据集情况对比表

为了丰富图像数据的训练集,更好地提取图像特征,提高模型泛化能力(防止模型过拟合),需要对图像数据进行数据增强。除了采用随机亮度、随机对比度、随机饱和度、随机角度、随机水平翻转、随机竖直翻转的方法增强数据,还加入了高斯噪声,增加噪声数据提升模型鲁棒性。这七种数据增强方式的效果如图7所示。

图7 七种数据增强方式示例

通过混合使用以上七种图片数据增强方法,便可获得更大的数据样本。

4.2 实验环境与设置

所有实验均在Linux Ubuntu平台下完成,深度学习框架为PyTorch,框架版本1.8.1,Python版本3.8,CUDA版本11.1,显卡选用NVIDIA GeForce RTX 3090,显存为24G。

在使用的三个数据集中,FER2013数据集已经标定好了训练集和测试集,而CK+和JAFFE数据集并未标定训练集与测试集,对此采用十折交叉验证方法。网络权重参数采用何恺明方法初始化,使用对数损失函数的随机梯度下降法(BGD)更新权值,批大小为128。

考虑到实验中CK+和JAFFE数据集的图像数量过少,为避免模型过拟合,先在FER2013数据集上预训练,再投入CK+和JAFFE数据集上进行训练。

4.3 实验设置与结果分析

不同算法在各个数据集上的加权平均识别率结果如表2所示。

表2 各数据集加权平均识别率对比 单位:%

从表中可以看出,采用He-ResNeXt网络,在同等层数下三个数据集上的识别率都得到了提升,在CK+、FER2013和JAFFE上分别达到了97.91%、71.93%和95.28%,提升了1.47%、5.5%和1.68%;对比基础的网络中识别率最高的ResNet-50,获得的提升则为2.54%、4.12%和2.09%。

对比其他数据集,FER2013数据集识别率较低,对此,经研究发现数据集存在部分图像未对齐或未正确标记,有的甚至存在没有人脸的情况,因此总体识别率偏低;而JAFFE和CK+中图像数量少,分辨率高,故识别率更高。

He-ResNeXt-29在识别实验中得到的混淆矩阵如图8所示。

从图8(a)上可以看出:在CK+数据集上,提出的网络对于每类表情的识别率都较高。其中对于“高兴”和“惊讶”的识别率达到了100%;对于“轻视”的识别率最低,也达到了94%,识别结果仍然较为理想。从图8(b)中可以看出,对于FER2013整体识别率不高,最低的是“害怕”识别率,为57%,其容易被误认成“悲伤”、“惊讶”和“中性”。最高的是“高兴”,识别率92%。“高兴”的数据在训练集中权重也是最大的。从图8(c)中可以看出,在JAFFE数据集上,表现同样较好,只是对“愤怒”的识别率较低,容易被误认成“厌恶”和“中性”。

图8 He-ResNeXt-29在各数据集上的混淆矩阵

4.4 消融实验

为了进一步验证He-ResNeXt残差块设计及其特征融合策略的有效性,现以ResNeXt-29作为基础网络,在区分度较高的FER2013数据集上进行消融实验,步骤如下:

a)首先对未添加任何模块的基础网络ResNeXt-29进行实验;

b)更换基础网络ResNeXt-29的He-ResNeXt残差块,特征融合方式不变;

c)不改变ResNeXt-29的He-ResNeXt残差块,使用组内优先特征融合;

d)更换ResNeXt-29的He-ResNeXt残差块,并改变特征融合方式。

实验结果如表3所示。从实验结果可以看出,组合使用He-ResNeXt残差块和特征融合方式可以提高网络识别率。

表3 消融实验结果

5 结束语

本研究中提出批量分组异构的残差人脸表情识别网络He-ResNeXt,是基于主流网络优化,改善了原始网络对图像信息的提取能力。经由实验也验证了新模型在原始模型基础上获得了相当程度的提升。后续工作中还可在多个方面继续作出改进:随着硬件算力的提高,使得对视频进行表情识别成为可能,对于视频的准确表情识别更具应用价值;可以进行多模态工作,结合脑电、声音、体温、肢体动作等信息辅助表情识别系统,提高系统稳定性和识别的准确度;在保证识别率的情况下,通过减少参数量,轻量化模型,使其在低算力平台上部署成为可能。

猜你喜欢

集上识别率残差
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
关于短文本匹配的泛化性和迁移性的研究分析
基于互信息的多级特征选择算法
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用
档案数字化过程中OCR技术的应用分析
基于PCA与MLP感知器的人脸图像辨识技术
科技文档中数学表达式的结构分析与识别
人工智能现状和发展