APP下载

基于卷积神经网络的人脸表情识别研究

2018-02-01李思泉张轩雄

软件导刊 2018年1期
关键词:卷积神经网络特征提取

李思泉+张轩雄

摘要:随着人机交互技术和机器学习技术的发展,人脸表情识别技术逐渐成为研究热点。针对传统人脸表情识别算法鲁棒性差、表情特征提取能力不足的问题,提出一种改进的基于卷积神经网络的人脸表情识别算法。首先对人脸图像进行预处理,检测并分割出人脸关键点的部分图像,然后输入到包含卷积神经网络通道和卷积稀疏自编码(CSAE)预训练通道的双通道模型中。其中卷积神经网络通道部分使用了批量正则化(Batch Normalization)和ReLU激活函数,加快了模型训练速度,解决了梯度消失问题,同时增加了模型的非线性表达能力。通过引入Dropout技术,解决了网络的过拟合问题。在另一个通道,对输入的人脸表情图像增加了卷积稀疏自编码进行无监督预处理。实验结果表明,该算法在JAFFE、CK+人脸表情数据集上均获得了较好的识别效果。

关键词:人脸表情识别;卷积神经网络;卷积稀疏自编码;特征提取;无监督预处理

DOIDOI:10.11907/rjdk.172863

中图分类号:TP301

文献标识码:A文章编号文章编号:16727800(2018)001002804

Abstract:With the development of humancomputer interaction technology and machine learning technology,facial expression recognition technology has gradually become an important field. In this paper, we proposean improved algorithm based on Convolutional Neural Network (CNN) for face expression recognition due to the lack of robustness of traditional facial expression recognition algorithm and availabe feature extraction ability.First of all,we pretrain the facial image and detect, segment face. The segmented face applied to a dualchannel model which, includes a convolutional neural network channel and an extra pretraining channel by sparse convolutional autoencoders. The training speed is improved according to Batch Normalization and the ReLU activation function by convolutional neural network channel, and solve the problem of gradient disappearance.This modelcan increase nonlinear expression ability of the model. At the same time, the introduction of dropout technology also remove the problem of overfitting. Another channel that contains a sparse convolutional autoencoder aims to deal with input facial expression images. Experimental results involved this algorithm demonstratean improved recognition ability on the JAFFE and CK+dataset.

Key Words:facial expression recognition;convolutional neural network;feature extraction;sparse convolutional autoencoders;unsupervised pretraining

0引言

人类的情感认知一直是人机交互技术研究的重要课题,而人脸表情是传达人类情感和认知的重要方式。面部表情變化能够准确传达人类除语言表达之外的心理活动变化。人脸表情识别系统一般包括人脸检测、图像预处理、特征提取和表情分类4部分。其中表情的特征提取和分类是人脸表情技术研究的重点,关系着最终的表情判别结果。

目前表情识别特征的提取方法主要包括:①几何特征提取,如面部的几何特征:眼睛、嘴巴、眉毛等;②频率特征提取法,如Gabor小波变换;③运行特征提取,如光流法。表情分类方法主要包括线性分类器、K最近邻、弹性图匹配法、支持向量机。Burkert等[6]提出DeXpression深度网络模型,在MMI数据库有较好的识别效果,识别率达到98.3%;Chai等[7]提出了结合Gabor小波和深度信念网络(DBN)的人脸表情识别方法,在遮挡的情况下识别效果较好;Masci[8]提出了基于无监督的堆叠深度卷积自编码方法应用于层次特征提取。

2006年Hinton[9]在《自然》杂志上发表了利用RBM编码的深层神经网络,利用单层的RBM自编码预训练使深层的神经网络训练变得可能。深度学习方法已成功应用于语音识别、计算机视觉和自然语音处理等领域,其中最具代表性的就是卷积神经网络(CNN)。endprint

1融合卷积神经网络与卷积稀疏自编码的网络模型

本文针对卷积神经网络在几何变换、形变具有一定程度不变性等方面优势,同时为进一步减少人脸表情图像易受到光照、遮挡和姿态等外界因素影响,提高自身的鲁棒性,提出一种改进的结合了卷积神经网络和卷积稀疏自编码的人脸表情识别算法。具体网络模型如图1所示。

1.1卷积稀疏自编码器

卷积稀疏自编码器是在自编码器的基礎上改进而来。自编码是一种基于预训练阶段的无监督学习算法,通过对原始数据添加约束条件进行权重初始化,使hw,b(x)≈x,输出接近于输入x。卷积自编码(CAE)是把之前自编码中内积的操作转换为卷积的操作[1],卷积核的值决定了卷积操作结果,可以设置不同卷积核进行去噪[2]、模糊变换等处理。

本文的卷积稀疏自编码(CSAE)是在卷积自编码(CAE)基础上进行的改进。通过采用WTA(WinnerTakeAll)[3]方法,加入稀疏约束条件后[4],能够有效地提取神经网络特征,计算量较少。对于每一个特征图,保留RELU激活函数处理的最大值,并把其它值进行置0处理。采取WTA方法进行每一层的稀疏化处理,相比于收缩正则化方法更加有效[5]。WTA方法只适用于训练阶段,网络训练完成与权重确定后则消失。网络则会继续把图像的有效信息传入到下一层,而不是传入隐藏层的一个非零值进行特征映射。经过预训练之后,为了减少计算量、减少模型参数,选择预训练后固定权重[10]。

由于无监督预训练数据是人脸图像,图像中相邻像素之间的相关性非常强,可以认为训练输入是冗余的,需要进行白化处理来降低输入数据的冗余。本文采用ZCA进行白化处理,在不降低维数的情况下,可以使处理后的数据更接近原始数据。使用无监督预处理后的卷积稀疏自编码器,能够让模型学习到最佳的滤波器,并用最佳滤波器代替传统卷积神经网络的原有滤波器。具体流程如图2所示。

1.2卷积神经网络

卷积神经网络是一个多层感知神经网络,包含卷积层、下采样层与全连接层。主要思想包括局部感知、权重共享和子采样[11]。本文改进的卷积神经网络有两个卷积层(C1,C2)和两个下采样层(maxpooling),并用ReLU(修正线性单元)激活函数代替传统的Sigmoid激活函数。在激活前加入Batch Normalization(BN)[12]进行规范化操作,避免梯度消失,最后在全连接处加入Dropout[13]技术防止过拟合。卷积神经网络通道中,卷积核大小为5×5,采样核大小为2×2,Dropout系数为0.5。具体网络模型如图3所示。

1.2.1卷积层

在卷积神经网络通道中,C1、C2代表卷积层。通常定义卷积层为特征提取层,通过可训练的滤波器对输入图像或上一层特征图像进行卷积处理,得到一个二维特征图。根据输入图像大小定义滤波器卷积核大小,通过不同滤波器处理可以得到不同特征图。每一个卷积后特征图都对应一个大小相同、方向不同的卷积核。每一个卷积层都有很多特征图,假设定义当前卷积层为l,则第j个特征图表达式如下:

神经元x(k)经过(3)、(4)变换,会逐渐形成均值为0、方差为1的正太分布,从而使反向传播变化区域扩大,收敛速度也会加快。

1.2.4线性单元修正

修正线性单元(Rectified Linear Unit) 来源于2003年Lennie P对人脑神经细胞稀疏性的研究,其优势在于其具有单侧抑制、稀疏激活性、相对宽阔的兴奋边界。实验结果表明,近似生物神经激活函数ReLU相比于Sigmoid函数效果更好。将ReLU激活函数替代其它激活函数,可有效添加网络稀疏性,因为ReLU激活函数会使一部分神经元输出为0。在神经网络的正确传播中,ReLU激活函数只需要一个阈值即可得到激活值,而不需要经过复杂的运算,从而加快了计算速度。

1.2.5Dropout技术

Dropout技术最早由Hinton[13]在2012年提出,与L1和L2范式技术不同,其基本思想是在每次训练时,让一半的特征检测器停止工作,可以使其有50%的概率被移除神经元,而不依赖其他神经元。实验结果表明该做法可以提供网络泛化能力,防止过拟合。每一次Dropout后,都可以认为训练后的网络模型为整个网络的子网络,从而进一步减小计算量。

2实验与结果分析

2.1实验平台

实验的硬件平台为:联想R720i77700CPU3.6GHz,软件平台为:Keras深度学习框架、Python语言。

2.2JAFFE 数据集

该数据集共有213张人表情图片,由10位日本女性人脸的共7种人脸表情组成。每种人脸表情有3~4幅图像,每个图像的像素为256*256。先将已检测出的人脸图像归一化为64*64像素大小的图像。

本文采用交叉验证的方法提高识别结果的可靠性。把所有人脸表情样本分成两个子集,一部分是样本集,另一部分是测试集。使用5次交叉验证方法,将所有人脸图像样本分为5份,其中4份作为训练样本,1份作为测试样本。依次重复5次实验,求取其平均值作为最终实验结果。表1给出了JAFFE数据集下7种表情的识别率。

2.3CK+数据集

CK+数据集发布于2010年,由Cohn Kanade表情库扩展而来,其人脸表情图像样本比JAFFE多。本文选取7种表情的共3 200个人脸图像样本,其中包括生气500个样本、恐惧420个样本、高兴550个样本、中性430个样本、悲伤480个样本、惊讶420个样本、厌恶400个样本。

本文首先对人脸图像进行归一化处理,检测出人脸关键点部分,得到64*64像素的人脸表情样本。由于样本数目较多,为增加准确性,采用10次交叉验证法对样本进行统计分析。把人脸数据集中所有的人脸表情样本分成endprint

10份,轮流将其中9份作为训练样本,1份作为测试样本。依次重复10次实验,最后把10次实验结果的平均值作为最终识别结果。表2给出了在CK+数据集下7种表情的识别率。

为了验证本文提出的改进卷积神经网络模型的有效性,实验在CK+数据集下,对基于LBP+SVM、Gabor+SVM、BDBN、CNN、CSAENN的人脸表情识别算法的平均识别率进行了比较。表3结果表明,本文改进的卷积神经网络算法比传统卷积神经网络算法(CNN)平均识別率提高了2.4%。相对于卷积稀疏自编码的神经网络人脸表情(CSAENN)算法,识别率也提高了3.1%。

在CK+数据集下,CNN算法和本文的CNN+CSAE算法的各自训练时间和识别结果如表4所示。实验结果表明,本文算法比传统卷积神经网络算法的训练时间更短,识别率更高,算法分类效果更为显著。

3结语

本文提出的改进双通道卷积神经网络模型,在JAFFE数据集和CK+数据集上均取得了不错的识别效果。卷积神经网络通道部分,首先通过对人脸图像进行归一化处理,检测出人脸的关键点部分。接着在RELU激活函数前加入Batch Normalization(BN),加快了模型训练速度,并解决了梯度消失问题,同时增加了模型的非线性表达能力。双卷积层能够更好地提取人脸表情特征,减少了权值数量,降低了网络的模型复杂度;另一个通道用卷积稀疏自编码器进行无监督预训练人脸表情图像,首先进行白化处理以降低冗余,加入稀疏化约束,优化网络参数,选出最佳滤波器替代原卷积神经网络滤波器,并加入卷积神经网络模型中。最后将两个通道输出,连接到Dropout全连接层和Softmax分类器,完成最终的人脸表情分类。下一步研究工作将考虑在遮挡、光照等因素下进行人脸表情识别,进一步研究视频图像帧的人脸表情识别,并对人脸视频图像进行去噪、去抖动等优化,以期能够研究出更为实用的人脸表情识别方法。

参考文献:

[1]牛玉虎. 卷积稀疏自编码神经网络[J]. 计算机与现代化, 2017(2):2229.

[2]李江, 冉君军, 张克非. 一种基于降噪自编码器的人脸表情识别方法[J]. 计算机应用研究, 2016, 33(12):38433846.

[3]MAKHZANI A, FREY B. A winnertakeall method for training sparse convolutional autoencoders[J]. Eprint Arxiv, 2014.

[4]VU T D, YANG H J, NGUYEN V Q, et al. Multimodal learning using convolution neural network and sparse autoencoder[C].IEEE International Conference on Big Data and Smart Computing, 2017:309312.

[5]RIFAI S, VINCENT P, MULLER X, et al. Contractive autoencoders: explicit invariance during feature extraction[C].ICML, 2011.

[6]BURKERT P, TRIER F, AFZAL M Z, et al. DeXpression: deep convolutional neural network for expression recognition[J].Computer Vision and Pattern Recognition,2015, 22(10):217222.

[7]CHAI R. Face recognition algorithm based on Gabor wavelet and deep belief networks[J]. Journal of Computer Applications, 2014(9):19381943.

[8]MASCI J, MEIER U, DAN C, et al. Stacked convolutional autoencoders for hierarchical feature extraction[M]. Artificial Neural Networks and Machine Learning –ICANN 2011. Springer Berlin Heidelberg, 2011:5259.

[9]HINTON G E, SALAKHUTDINOV R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006.

[10]DOI E, INUI T, LEE T W, et al. Spatiochromatic receptive field properties derived from informationtheoretic analyses of cone mosaic responses to natural scenes[J]. Neural Computation, 2003, 15(2):397417.

[11]LOPES A T, AGUIAR E D, OLIVEIRASANTOS T. A facial expression recognition system using convolutional networks[C].Graphics, Patterns and Images. IEEE, 2015:273280.

[12]IOFFE S, SZEGEDY C. Batch normalization: accelerating deep network training by reducing internal covariate shift[J]. Learning,2015:448456.

[13]HINTON G E, SRIVASTAVA N, KRIZHEVSKY A, et al. Improving neural networks by preventing coadaptation of feature detectors[J]. Computer Science, 2012:212223.

(责任编辑:黄健)endprint

猜你喜欢

卷积神经网络特征提取
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于Daubechies(dbN)的飞行器音频特征提取
基于卷积神经网络温室智能大棚监控系统的研究
一种基于LBP 特征提取和稀疏表示的肝病识别算法
基于深度卷积神经网络的物体识别算法
基于DSP的直线特征提取算法
基于MED和循环域解调的多故障特征提取
Walsh变换在滚动轴承早期故障特征提取中的应用