一种基于模糊支持向量机的人脸识别新算法*
2012-05-14杨颖娴
杨颖娴
(广东司法警官职业学院 信息管理系,广东 广州 510520)
在人脸识别中,为了提高人脸识别率,寻找一个好的特征提取方法和分类器非常关键。目前常用的人脸特征提取方法有特征脸法、奇异值分解、傅里叶变换及小波分解等,常用的人脸识别分类器有人工神经网络分类器、最近邻分类器、Fisher线性分类器和基于统计学习的分类器等[1-2]。
支持向量机 SVM (Support Vector Machine)最初由Vapnik等人于20世纪90年代提出,它建立在统计学习理论基础上,克服了小样本和高维数问题,是一种新型的机器学习方法[3-5]。然而在实际问题中,不同的样本对分类的作用不一定是相同的,因此,对所有的训练样本采用相同的错分惩罚是不合理的。基于以上考虑,Lin Chunfu等人[6]将隶属度函数引入支持向量机中,提出了一种模糊支持向量机,在支持向量机的基础上给每个样本分别赋—个隶属度值,对不同的样本采用不同的惩罚权重系数,在构造目标函数时,使不同的样本有不同的贡献,对噪声或孤立点赋予很小的权值,从而达到消除噪声或孤立点的目的。张钊等[7]提出在二叉树支持向量机的基础上结合模糊支持向量机理论提出的多分类方法,克服了上述缺点,取得了较好的分类效果。宦若虹等把支持向量机应用于人脸识别[8]提出采用ICA和SVM进行图像的目标提取和识别,取得了一定的效果。
本文在参考文献[7]和参考文献[8]等工作的基础上,结合独立元分析和模糊支持向量机分类器,提出了一种新人脸识别方法。首先利用独立分量分析对人脸图像进行人脸特征脸空间的特征提取,所得到的特征值组成向量,再利用模糊支持向量机分类器对各类人脸图像进行分类。基于ORL人脸图像库的实验结果表明,本文的识别方法非常有效,且算法简单,易于实现。
1 模糊支持向量机分类器
1.1 FSVM模糊支持向量机的多类算法
[6]将模糊技术应用于支持向量机中,提出了一种模糊支持向量机,针对支持向量机对训练样本内的噪声和孤立点的敏感性,引入模糊参数,对不同的样本采用不同的惩罚系数,使得对决策函数的学习有不同的贡献,从而减弱噪声及孤立点对分类的影响。
设给定模糊训练样本集S ={(x1,y1,μ1),(x2,y2,μ2),…,(xl,yl,μl)}和核函数K(xi,xj),其中xi∈Rn,yi∈{-1,1},μi∈(0,1]。K对应某特征空间Z中的内积,即K(xi,xj)=φ(xi)·φ(xj),变换φ:X→Z将样本从输入空间映射到特征空间,μi是训练点(xi,yj,μi)的输出yj=1(正类)或-1(负类)的模糊隶属度(i=1,2,…,l)。则模糊最优分类函数为:
在SVM中,仍将n类问题转化为n个两类问题来处理。 设类 i和类 j的决策函数为 Dij(x)=w(x)+bij,并有Dij(x)-Dji(x)。对于输入向量 x,计算:
在模糊支持向量机算法中,通过对不同样本赋予不同的隶属度 ui=f(Dij(x)),如果 ui是 Dij(x)的线性函数,则:
这里隶属度均为正值。
1.2 FSVM分类器和二叉决策树的组合(BTFSVM)
在样本数量和类别数目较多的情况下,FSVM算法的时间复杂度很大,因此考虑结合二叉决策树来降低算法的时间复杂度。如果存在一个类可分的问题,那么任意两类之间都是两两可分的。基于这点,本文将FSVM两类分类器与二叉决策树的拓扑结构结合起来,构成树形结构的多类分类器。在FSVM分类器的设计中,核函数的选择也是关键,常用的核函数有多项式核函数、径向基核函数 (RBF)和sigmoid函数作为内积核函数等。本文利用RBF函数作为核函数。下面给出基于径向基核函数(RBF)的二叉树 FSVM多类分类方法(K类,K>2),具体步骤如下:
(1)排序。对K类样本根据各类样本的数量进行由多到少的排序,形成分类序列集合。
(2)训练传统的 SVM分类器,得到初始支持向量,并用其来构成决策分类面。
(3)根据 1.1节中介绍的方法,由传统 SVM中得到的分类面及超平面,求出隶属度函数 ui,确定模糊训练集(x1,y1,μ1),(x2,y2,μ2),…,(xl,yl,μl)。
(4)训练模糊训练点,构造最优分类函数。对于k类训练样本,训练k-1个FSVM分类器。
(5)对样本进行分类。
(6)依次下去,直到算法结束。
2 基于独立分量分析的人脸特征提取
ICA作为一种盲源信号分离技术[8],是基于信号的高阶统计特性的分析方法。由原始样本数据求一个特征空间,然后把新的数据映射到这个特征空间,获得一组特征向量,用来分类识别。在人脸图像的实际处理中,ICA基本原理是通过对人脸训练样本进行某种线性分解,把其分解成统计上独立的成分,根据这些独立成分对待检测图像进行判别。在利用ICA之前先要对原始数据进行预处理,预处理的内容主要包括去均值、矢量归一以及PCA降维,降维既能去除噪声,又能减少运算量。
记xi为一幅人脸数据,可以构造一个训练人脸集合{x1,x2,…,xM}(xi表示一幅 m×n 大小的人脸图像按列展开成的M×N维向量),其中每个人脸数据看作是N个独立元素 s1,s2,…,sN的线性组合,这些独立元素概率独立并具有零均值。 将观察变量xi记作向量 X,X=(x1,x2, …,xM)T,将元素 si记作向量 S,S=(s1,s2,…,sN)T,则人脸的样本集X可以表示为:
ICA算法的目的就是求分离矩阵W,使得:
利用ICA提取人脸特征的具体过程如下:
(1)计算所有样本的均值向量并中心化所有样本;
(2)求样本X的协方差矩阵并求白化矩阵;
(3)求输出矩阵 Z,它是X在 UM1所张成的子空间上的投影;
(4)应用固定点ICA 算法对 Z作独立分量分析,得到输出Y;
(5)将人脸图像T向独立成分S构成的子空间投影,得到投影系数。
3 实验设计与分析
为了检验本文算法的有效性,选择ORL标准人脸库作为分类识别对象。在人脸识别过程中,为构造特征脸空间,首先根据本文第2节的算法对人脸图像进行降维,将 400幅 112×92的人脸图像转化为 40×40,求得 M个相互正交的特征向量和相对应的M个特征值;然后将人脸图像在高维空间中的向量映射到特征脸空间,构成人脸图像在特征脸空间的特征参数,以这些特征参数为输入构造FSVM的样本空间。利用1.2节的FSVM的二叉树分类算法判断人脸图像所属类别。
为了验证本文所提出方法的有效性,分别采用4种不同方法对ORL人脸数据库进行实验,实验结果如表1所示。
表1 4种方法实验结果
从结果可以看出,在相同的实验条件下,本文提出的方法的识别率明显高于其他3种分类算法,误识标准差也更小,说明系统更加稳定。
本文结合独立元分析和模糊支持向量机分类器,提出一种新的人脸识别方法。首先利用独立分量分析对人脸图像进行人脸特征脸空间的特征提取,将所得到的特征值组成向量,再利用模糊支持向量机分类器对各类人脸图像进行分类。实验结果证明,与采用单独的PCA+SVM、ICA+SVM等方法相比,该方法具有更好的鲁棒性且识别精度较高。
参考文献
[1]ZHAO W Y, CHELLAPPA R, ROSENFELD A, et al.Face recognition: a literature survey [J].ACM Computing Surveys, 2003,35(4):399-458.
[2]杨洁,冯力刚,蒋加伏.基于小波包和支持向量机的人脸识别[J].计算机仿真,2004,21(9):131-133.
[3]CRISTIANINI N,TAYLOR J S.An introduction to support vector machines and other kernel-based learning methods[M].Cambridge: Cambridge University Press, 2000.
[4]邓乃扬,田英杰.数据挖掘中的新方法——支持向量机[M].北京:科学出版社,2004.
[5]祁亨年.支持向量机及其应用研究综述[J].计算机工程,2004,30(10):6-9.
[6]Lin Chunfu,Wang Shengde.Fuzzy support vectormachines[J].IEEE Transactions on Neural Networks,2002, 13(2): 464-471.
[7]张钊,费一楠,宋麟,等.基于模糊支持向量机的多分类算法研究[J].计算机应用,2008,28(7):1681-1683.
[8]宦若虹,杨汝良.基于ICA和SVM的SAR图像特征提取与目标识别[J].计算机工程,2008,34(13):24-28.
[9]BELLA J.An information maximization approach to blind separation and blinddeconvolution[J].Neural Computation,1995,7(6):1129-1159.