深度学习与人脸识别方法研究

2018-05-08 03:24姜慧
科技创新与应用 2018年12期
关键词:神经网络人脸识别深度学习

姜慧

摘 要:传统的机器学习方法需要对每个领域都获取大量的训练数据,这样就会在研究中耗费大量的人力物力。深度学习可以更好地通过增加数据集的规模来改善学习结果。深度学习更适合于未标记数据,而这超出了自然语言处理的范畴,后者更多限于实体识别。基于深度学习的优点,这篇文章利用深度学习方法来进行人脸识别,提出了构建深度学习网络的方法,它能够识别训练集中没有身份的表情信息。

关键词:人脸识别;深度学习;神经网络;特征识别;算法

中图分类号:TP391.41 文献标志码:A 文章编号:2095-2945(2018)12-0022-02

Abstract: Traditional machine learning method needs to obtain a large amount of training data for each field, so it will cost a lot of manpower and material resources in the research. Deep learning can better improve learning results by increasing the size of data sets. Deep learning is more suitable for unmarked data, which goes beyond natural language processing, and the latter is more limited to entity recognition. Based on the advantages of deep learning, this paper applies the deep learning method to face recognition, and proposes a method of constructing deep learning network, which can recognize information of facial expression without identity in the training set.

Keywords: face recognition; deep learning; neural network; feature recognition; algorithm

1 概述

深度学习是近十年以来在人工智能领域取得的最重要的突破之一。现在的深度学习模型属于神经网络,在语音识别、自然语言处理、计算机视觉、图像与视频分析、多媒体等诸多领域取得了巨大的成功。这篇论文主要研究其在人脸识别方面的研究以及取得的成果。

人脸识别是深度学习在物体识别上的一个重要突破。我们研究的人脸识别是一种生物特征识别技术,这种技术通过人体自身的生物特征来区分不同的生物体。在近些年来,人脸识别技术已趋于成熟并在很多领域中有所应用。其普遍性和可采集性高,独特性、稳定性以及防欺骗性一般,但是性能较低。同时,人脸识别技术还具有很高的精度。我们研究深度学习应用于人脸识别中的研究进展以及人脸识别的研究方法,结合几种机器学习方法在人脸识别中的性能比较,进一步探索研究深度学习在人脸识别方面的贡献以及研究方法。

2 深度学习方法

深度学习常用的方法有三种:(1)自动编码机(AutoEn

coder),(2)稀疏编码(Sparse Coding),(3)受限玻尔兹曼机(Restrict Boltzmann Machine,RBM)。下面重点介绍一下稀疏编码方法。

如果我们放松输出O必须与输入I相等的条件,并且利用基的概念,列出式子:O=W1×B1+W2×B2+…Wn×Bn,该式中,基-Bi,系数-Wi,就得到这样的优化式:Min|I-O|。我们可以通过求解这个优化式子来得到基-Bi,系数-Wi,这些Bi和Wi就是输入的另外一种近似表达,即可被作为我们所说的特征,进而,表达输入I。这个过程是自学习过程。我们可以在上面式子中加上L1的Regularity限制,可以得到:

Min|I-O|+u*(|W1|+|W2|+……+|Wn|)。

该方法就被称为Sparse Coding,是一种简单的表示对象方法。我们利用这个方法来自动学习隐藏在对象数据中的基函数。

3 算法之人脸识别

3.1 检测定位方法

作为情绪识别的第一步,人脸的检测定位方法,我们选用的是基于haar特征和Adaboost算法的检测方法。可分以下几步:(1)通过Haar-like特征对人脸描述并通过积分图快速计算这一特征。(2)从许多Haar-like特征中选取重要特征,每个特征看做是一个弱分类器,我们按照一定的规则,把几个弱分类器级联,从而得到一个强分类器。(3)串联得到的强分类器,便可得到级联分类器。最终我们获得的这一个级联分类器就是人脸定位。将得到的强分类器进行串联来构成级联分类器是为了得到更高的检测精度。

我们可以把这个级联分类器看成一个决策树,其中每一层的强分類器都是由Adaboost算法训练获得的。如果上一层分类器输出的结果正确,就会触发第二层分类器,第二层再正确,触发第三层,以此类推。如果输出结果不正确被否定,那么这个否定的结果就会立即将当前子窗口的检测停止。这样,就会使人脸区域的大部分能通过检测而非人脸部分则不能通过检测。

3.2 稀疏自编码器训练多尺度卷积核

中间层神经元通过稀疏自编码器训练后实际上只会对局部的特定信息才有较强响应,如果把某一个中间层神经元的连接权值作为卷积核与输入数据作卷积,得到卷积核在图像其他部分的响应就会组成一幅特征图。对该特征图进行maxpooling操作,使其得到平移不变性。我们把所有的卷积核都进行这一操作,能够得到一组该图像的特征。具体算法步骤如下:

(1)用稀疏自编码器训练卷积核,其编码形式为:

hi(x)= s(Wix+αi) (1)

其中,s()是sigmoid函数,W是连接权值矩阵,i是某一尺度的编号。

(2)把得到的中间层神经元的连接权值当做卷积核来滑过整个图像,进行卷积运算:

fi(x)=σ(conv(Wi,x)+αi) (2)

式中,conv()代表做卷积,σ()代表滑过整个图像。

(3)我们把特征图分成若干个区域qm ,再把特征图进行maxpooling操作。

Fmi(x)=max(fki(x)) (3)

kaqmi

以两个尺度的卷积特征,得到最终的特征如下:

F(x)=[F1(x),F2(x)],其中,Fi(x)=[F1i(x),F2i(x)……Fpi(x)]。

通过训练,得到卷积核以后,采用以上算法步骤将图像进行卷积运算,就可得到相对应的特征图,再通过maxpooling将特征图降维。把得到的向量看做是一个初级特征,它描述了图像的本质,不是一种抽象描述。为了得到更加抽象的描述,我们可以通过构建深度神经网络来获得。由于表情图像的抽象性,我们先用无监督的方法提取初级特征,再利用构建深度学习网络的方法来学习抽象的特征来更好地进行分类。

3.3 并行网络结构与优化算法

对于有标签数据,以及单类别表情图像,先采用无监督的方法,训练出7个3层SAE网络,然后并联这7个子网络,将输出以One-hot编码,输入的表情图片对应就属于输出值最大的子网络。在进入并联网络的时候,低级特征会进入7个子网络计算,每个4层SAE子网络的最后一层只有一个神经元作为输出。神经元的连接权值训练方法如下:

其中,满足1{.}为{}中的条件时,函数值=1,否则,函数值=0。m是样本数量,k为网络数量,在这里,我们取k=7。可以发现,损失函数对神经网络有所限制,从而使样本类内距离最小类间距离最大。我们单独训练每个网络。在表情识别中,训练的7个网络分别对应不同的7类表情。预训练采用SAE算法。选用合适的优化算法很重要。

3.4 实验与结果

方法实现的具体步骤为:

(1)提取卷积核。训练样本我们取C-K库,JAFFE库中的未标记类别的人脸图像,在48*48大小的灰度图像中归一化。(2)随机在每张人脸上选20~30个14*14和20~30个18*18的图像块。提取169个14*14和256个18*18的卷积核。(3)从卷积核的特征图中获取4*4个由maxpooling操作获得的特征,一共能够得到16*(169+256)=6800个。(4)将得到的特征作为样本用并行网络进行训练,每个网络分四层,第一层6600个神经元,第二层700个,第三层60个,第四层1个。每一层用稀疏自编码逐层预训练(最后一层参数除外)。(5)使用一样的方法对样本对应的网络构建并行网络,最后用BP算法微调整体的损失函数。

我们将不同方法下对人脸表情识别率进行了对比:

观察结果,本文采用的方法在JAFFE数据集上取得了好的效果。由于数据集本身简单,表情诧异明显,所以效果也较好。与其他方法相比,这一部分的方法提出的网络结构更适合,由于只需要提供出数据和数据标签,按步骤训练网络就可以。而传统的方法大多需要人工设计特征,这样就很费时费力了。

參考文献:

[1]徐峰,赵怀勋.人脸检测方法研究[J].电脑知识与技术,2009(09):2438-2439,2427.

[2]Liu P,Han S,Meng Z,et al.Facial expression recognition via a boosted deep belief network[C].Comp-uter Vision and Pattern Recognition(CVPR),2014.

[3]余凯,贾磊,陈雨强,等.深度学习的昨天,今天和明天[J].计算机研究与发展,2013.

[4]BRAVERMAN M. Poly-logarithmic independence fools bounded-depth Boolean circuits[J].Communications of the ACM,2011,54(4):108-115.

[5]BENGIO Y,DELALLEAU O. On the expressive power of deep architectures[C].Algorithmic learning Theory,Berlin Heidelberg,2011:18-36.

[6]张行健,贾振堂,李祥.深度学习及其在动作行为识别中的进展[J].科技创新与应用,2016(06):66.

猜你喜欢
神经网络人脸识别深度学习
基于人工智能LSTM循环神经网络的学习成绩预测
基于图像处理与卷积神经网络的零件识别
人脸识别的“国标”来了
中科视拓开放商业版本人脸识别算法
基于自适应神经网络的电网稳定性预测
荣耀畅玩7C:人脸识别
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究