美章网 资料文库 卷积神经网络的人脸识别算法范文

卷积神经网络的人脸识别算法范文

本站小编为你精心准备了卷积神经网络的人脸识别算法参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

卷积神经网络的人脸识别算法

摘要:光照、表情变化等复杂环境下,传统人脸识别算法的性能下降较大,为此,提出一种基于LeNet-5改进的多层卷积神经网络人脸识别算法。首先,通过卷积层和池化层的融合来自动提取人脸特征并进行分类,然后,采用随机梯度下降法训练网络,使用Softmax分类器对人脸进行识别。在全连接层中采用”Dropout”方法减少训练过程中存在的过拟合问题。实验结果表明,提出的方法在AR人脸库上的识别率达到了98.65%,优于传统人脸识别方法,其训练速度也明显快于普通的卷积神经网络,验证了改进方法的有效性。

关键词:人脸识别;深度学习;卷积神经网络;Dropout技术

0引言

近年来,人脸识别技术发展迅速,在身份识别认证、视频监控、金融支付等领域取得了良好的效果。传统的人脸识别方法一般通过人工来提取特征,然后由支持向量机(SupportVectorMachine,SVM)或者浅层神经网络进行分类。其中,主成分析(PrincipalComponentAnalysis,PCA)算法[1]具有很强的识别能力,但是,在光照、表情变化等外界环境变化较大时,其识别性能下降明显。在这些复杂情况下,Gabor小波具有良好的适应性和鲁棒性,于是,ShenL.L.[2]提出了采用Gabor小波与SVM相结合的方法对人脸进行识别。但是,在样本数量和计算单元有限时,不能有效提取人脸特征,具有一定的局限性。卷积神经网络(ConvolutionalNeuralNetwork,CNN)在图像处理、语音识别方面具有特有的优势,其中,LeNet-5网络作为经典卷积神经网络已成功运用于手写数字识别。为此,本文通过对LeNet-5网络的研究,提出了一种既能快速进行网络训练又能保持良好识别性能的卷积神经网络模型。

1卷积神经网络的原理

卷积神经网络最早起源于人们对猫的大脑视觉层细胞的研究,研究发现,在猫的视觉皮层中存在一系列构造复杂的细胞,这些细胞对眼睛视觉的某些局部区域非常敏感,于是,提出了感受野的概念。十九世纪八十年代初,日本学者FuKushima等通过对感受野的研究,进一步发展出神经认知机的概念,从而初步形成卷积神经网络的结构。卷积神经网络的主要核心思想是局部感受野、权值共享、空间池化。局部感受野是输出特征图上的某个点映射在输入图像的局部区域大小。权值共享理论主要基于图像的空间联系局部性的特点,由于图像具有局部关系性,所以每个图像的神经元只需要感受到图像的局部区域。空间池化具有显著减少参数和保持某种旋转、平移、伸缩等不变性的特点。卷积神经网络的结构主要由输入层、卷积层、池化层、全连接层以及输出层等组成。

1.1卷积层卷积层通过卷积操作来提取特征,计算图像的每一个像素以及其领域像素和滤波器矩阵对应元素的乘积和[3],在卷积过程中,卷积核滑动到输入图像的所有位置,对图像的任意一个点进行卷积运算,经过多次运算,获得图像的特征。卷积层的意义在于权值共享与局部感受,是卷积神经网络性能的来源。

1.2池化层池化层一般在卷积层后面,它能聚合图像中不同位置的特征,从而有效减少图像的特征数以及权值参数,从而降低数据维度和特征图分辨率,起到二次特征提取的作用。经典的池化技术主要有均值池化、最大池化、随机池化。

1.3全连接层多层卷积后便是全连接层,其作用是将经过前面卷积层提取的图像特征进行分类。全连接层的每一个神经元与上一层所有神经元互相连接。

2卷积神经网络的改进

2.1卷积神经网络1998年,Y.Lecun等[5]提出了一种识别率很高的卷积神经网络LeNet-5,已经广泛应用于手写数字识别领域,但不能直接应用于人脸识别。将应用于手写字符的Mnist数据集和人脸数据集对比,人脸数据集由于其人脸特点具有更大的复杂性,基于LeNet-5模型的网络不能很好地识别人脸。所以,本文对LeNet-5卷积神经网络进行了改进。(1)增加卷积核的数量。由于人脸数据集比Mnist数据集复杂,而LeNet-5的卷积核数量较少,无法获取更多的特征信息。所以通过增加卷积核的数量来获取更多的特征信息。(2)改进卷积神经网络结构。在网络结构上,采用卷积层和池化层相融合[6]的方法,通过改变窗口滑动步长来取代池化层的作用,即将卷积层的步长由原来的1增大为2。将原来LeNet-5网络层中的卷积层和池化层简化为一层网络,减少了训练时间。在卷积神经网络中,卷积层的步长设定越小,窗口滑动重叠的部分就越多,也就是说提取的信息就越多。而设定的步长越大,窗口滑动重叠的部分就越少,提取的特征信息就越少。增大卷积层步长虽然会损失部分特征信息,但由于图像在局部区域中具有相互关联的特点,提取局部特征信息也能实现对人脸的识别。(3)防止卷积神经网络出现过拟合现象。由于卷积神经网络的全连接层容易出现过拟合的问题,本文在全连接层采用Dropout技术来防止网络出现过拟合。Dropout技术是一种训练网络权值的有效方法,本文将Dropout值设置为0.5,即随机输出50%的神经元。(4)提升网络的泛化能力。将原来网络的激活函数改为非线性能力更强的Relu函数。

2.2改进的卷积神经网络结构改进后的卷积神经网络如图3所示。第一层为输入层,输入像素规格为32×32的人脸图像。第二层为卷积层,为了充分提取人脸图片特征,采用20个滤波器,其中滤波器的大小设置为5×5,步长设为2。通过计算得出下一层的特征图大小为14×14,该层有20个不同的特征图。第三层为卷积层,卷积核大小设置为5×5,步长设置为2×2,经过这一层融合后大小变为5×5,这一层的特征图数目为45个。第四层为全连接层F1,该层设计有240个神经元。第五层为全连接层F2,这一层需根据具体情况进行调整。

3实验结果与分析

3.1实验数据及预处理为了验证本文算法的有效性,采用AR人脸库作为人脸数据集。AR人脸库由西班牙巴塞罗那计算视觉中心建立,包含有116人的3288幅人脸图像,人脸有不同的表情,有正常、光照、表情变化、遮挡等多种情况。每张图片的像素大小为120×165。实验前,先对AR人脸库的人脸图像进行预处理,图像大小为32×32,灰度值为[0,1]。

3.2构建人脸识别模型从AR人脸数据库中随机抽取100人,男女各50人,每人有26张图片,组成一个数据集。在训练过程中,每人随机选取其中的21张图片作为训练集,剩下的图片作为测试集。训练集共有图片2100张,测试集图片500张。设置学习率为0.015,动量设置为0.9,由于该数据集有100人,所以将全连接层F2设置为100。

3.3实验分析通过表1的实验结果可以看出,由于卷积核的步长为1,模型1的窗口滑动时重叠的部分最多,所以获得的数据信息最丰富,识别率最高,但同时存在着训练时间过长的问题。模型2为普通CNN,卷积核的步长为1,由于池化操作起到了降低数据维度的作用,所以训练速度快于模型1,但人脸识别准确度降低。模型3没有池化层,但卷积核的滑动窗口和池化层的步长大小均为2。模型3的窗口滑动时重叠的部分不如模型1多,在识别率上低于模型1,但是识别准确率和训练速度优于模型2。模型4时的卷积核步长选为3,不加入池化操作。由于滑动时重叠的部分最少,所以提取到的特征信息最少,识别率也最低,在窗口停留的次数也是最少,所以训练速度最快。综上分析可以看出,当卷积神经网络为模型3时为最佳选择。

3.4本文算法与传统算法的比较为了验证本文算法的识别效果,分别选择3种传统算法PCA[7],PCA+LBP[8],Gabor+SVM[9]在AR人脸库上进行实验。

4结束语

本文针对传统人脸识别算法的局限性,提出了一种六层全卷积层神网络人脸识别算法,为设计卷积神经网络提供一个新的思路。为了进一步提高识别率,后续将通过增加网络层数和选择合适的卷积核类别对卷积神经网络进行优化,进一步提高识别性能。

作者:董洛丞;陈张平 单位:杭州电子科技大学自动化学院