基于粒子群算法和神经网络的人脸识别分类器研究 下载本文

龙源期刊网 http://www.qikan.com.cn

基于粒子群算法和神经网络的人脸识别分类器研究

作者:段向军

来源:《计算技术与自动化》2011年第02期

摘要:针对BP神经网络作为人脸识别分类器具有的收敛速度慢、易陷入局部极小等缺点,提出利用改进的粒子群优化算法(PSO)改善BP网络训练的方法,建立了一种基于改进的PSO-BP神经网络,更合理有效地确定了神经网络的连接权值和阈值,将其应用到人脸识别系统中的分类环节中,并与单独使用BP神经网络分类的结果相比较,实验表明,该方法识别速度快,识别效果更好。

关键词:人脸识别;奇异值分解;BP神经网络;粒子群优化算法 分类号:TP391 文献标识码:A

Face Recognition Classifier based on PSO and Neural Network DUAN Xiang-jun

( Nanjing College of Information Technology, Nanjing 210046, China )

Abstract: Because BP neural network for face recognition classifier has slow convergence and easy to fall into the local minimum, using particle swarm optimization (PSO) to improve the BP network training method, establishing an algorithm based on the improved PSO-BP neural network, which can more reasonable and effectively to determine the neural network connection weights and thresholds, applying this method to the classification of the face recognition system, and compared results with using the BP neural network classification only, experiment shows that the recognition speed is quicker and recognition result is better.

Key words: face recognition; singular value decomposition; BP neural network; particle swarm optimization 0引言

通常情况下,一个人脸自动识别系统包括以下三个主要技术环节:人脸检测、人脸特征提取、人脸识别。人脸识别即将人脸特征提取结果与库中人脸对比得出分类结果,即识别分类;

龙源期刊网 http://www.qikan.com.cn

分类器的选择在人脸识别系统整个过程中起着成败与否的关键作用。因此,要慎重选择研究分类器的设计,确保具有优秀的识别结果。

目前,应用较广泛的人脸识别分类器主要有:最小距离分类器[1]、基于PCA的分类法[2]、支持向量机识别方法[3]、人工神经网络[4]等模式识别方法。由于人工神经网络具有较强的容错能力、自适应学习能力以及并行信息处理结构、速度快等三大优势,在模式识别领域有广泛的应用,而人工神经网络模型又以标准三层BP神经网络最为经典。但由于传统的BP算法是基于梯度下降法的,而梯度下降法通常具有收敛速度慢、易陷入局部极小等缺点而导致学习失败,另外,BP网络学习时间较慢,不适合大规模的网络求解[5]。而粒子群算法(Particle Swarm Optimization, PSO)[6]源于对鸟群捕食行为的研究,系统初始化为一组随机解,粒子在解空间追随最优的粒子进行搜索,通过迭代搜寻最优值,所以用它来完成前期的搜索能较好的克服BP算法的缺点。 1 BP神经网络分类器

BP算法的基本思想是:BP神经网络的学习过程由信号的正向传播与误差的反向传播两部分组成。正向传播时,输入样本从输入层输入,经各隐含层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差的反向传播是将输出误差以某种形式通过输出层向隐含层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,以此误差信号来修正各单元权值。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。其用于人脸识别的结构模型图如图1所示。

2 粒子群算法原理

如果我们把一个优化问题看作是在空中觅食的鸟群,那么在空中飞行的一只觅食的“鸟”就是PSO算法在解空间中进行搜索的一个“粒子”(Particle),也是优化问题的一个解,“食物”就是优化问题的最优解。粒子的概念是一个折衷的选择,它只有位置和速度,没有质量和体积。 PSO算法中每个粒子就是解空间中的一个解,它根据自己的飞行经验和同伴的飞行经验来调整自己的飞行状态。每个粒子在飞行过程中所经历过的最好位置,就是粒子本身找到的最优解。整个群体所经历过的最好位置,就是整个群体目前找到的最优解。前者叫做个体极值(pBest),后者叫做全局极值(gBest)。每个粒子都通过上述两个极值不断更新自己,从而产生新一代群体。实际操作中通过由优化问题所决定的适应度函数值(fitnessvalue)来评价粒子的“好坏”程度。很显然,种群中每个粒子的行为都是:追随着当前的最优粒子,在解空间中进行搜索[7]。

1998年,Shi和Eberh 给出了标准PSO算法的数学描述如下[8] :设搜索空间为D维,群体中的粒子总数为N,第i个粒子的位置表示为向量 ;第i个粒子“飞行”历史中的最优位置(即

龙源期刊网 http://www.qikan.com.cn

该位置对应解最优)为 ,或者记为pBest,其中所有 中的最优个体,也就是全局最优个体被记作 ,或者记为gBest;第i个粒子的位置变化率(速度)为向量 。每个粒子的位置按如下公式进行迭代变化:

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文