计算机应用   2017, Vol. 37 Issue (11): 3145-3151  DOI: 10.11772/j.issn.1001-9081.2017.11.3145
0

引用本文 

王学军, 王文剑, 曹飞龙. 基于自步学习的加权稀疏表示人脸识别方法[J]. 计算机应用, 2017, 37(11): 3145-3151.DOI: 10.11772/j.issn.1001-9081.2017.11.3145.
WANG Xuejun, WANG Wenjian, CAO Feilong. Weighted sparse representation based on self-paced learning for face recognition[J]. Journal of Computer Applications, 2017, 37(11): 3145-3151. DOI: 10.11772/j.issn.1001-9081.2017.11.3145.

基金项目

国家自然基金资助项目(61673249,61672477,61503229);山西省回国留学人员科研资助项目(2016-004)

通信作者

王文剑, E-mail:wjwang@sxu.edu.cn

作者简介

王学军(1989-), 男, 河北邢台人, 博士研究生, 主要研究方向:机器学习、图像处理;
王文剑(1968-), 女, 山西太原人, 教授, 博士, CCF高级会员, 主要研究方向:计算智能、数据挖掘;
曹飞龙(1965-), 男, 浙江仙居人, 教授, 博士, 主要研究方向:神经网络、计算智能

文章历史

收稿日期:2017-05-16
修回日期:2017-07-05
基于自步学习的加权稀疏表示人脸识别方法
王学军1, 王文剑1,2, 曹飞龙3    
1. 山西大学 计算机与信息技术学院, 太原 030006;
2. 计算智能与中文信息处理教育部重点实验室, 太原 030006;
3. 中国计量大学 理学院, 杭州 310018
摘要: 近年来基于稀疏表示的分类方法(SRC)成为了一个新的热点问题,在人脸识别领域取得了很大的成功。但基于稀疏表示的方法在重建待测样本时,有可能会利用与待测样本相差较大的训练样本,并且没有考虑到表示系数的局部信息,从而导致分类结果不稳定。提出一种基于自步学习的加权稀疏表示算法SPL-WSRC,在字典中有效剔除与待测样本相差较大的训练样本,并利用加权手段考虑样本间的局部信息,以提高分类精度和稳定性。通过3个典型的人脸数据集中的实验,实验结果表明,所提算法优于原稀疏表示算法SRC,特别是当训练样本足够多时,效果更明显。
关键词: 基于稀疏表示的分类方法    分类    自步学习    加权系数    人脸识别    
Weighted sparse representation based on self-paced learning for face recognition
WANG Xuejun1, WANG Wenjian1,2, CAO Feilong3     
1. College of Computer and Information Technology, Shanxi University, Taiyuan Shanxi 030006, China;
2. Key Laboratory of Computational Intelligence and Chinese Information Processing of Ministry of Education, Taiyuan Shanxi 030006, China;
3. College of Science, China Jiliang University, Hangzhou Zhejiang 310018, China
Abstract: In recent years, Sparse Representation based Classifier (SRC) has become a hot issue which has been great successful in face recognition. However, when the SRC reconstructed test samples, it is possible to use the training samples with large difference from the test samples, meanwhile, SRC tends to lose locality information and thus produces unstable classification results. A Self-Paced Learning Weighted Sparse Representation based Classifier (SPL-WSRC) was proposed. It could effectively eliminate the training samples with large difference from the test samples. In addition, locality information between the samples was considered by weighting to improve the classification accuracy and stability. The experimental results on three classical face databases show that the proposed SPL-WSRC algorithm is better than the original SRC algorithm. The effect is more obvious, especially when the training samples are enough.
Key words: Sparse Representation based Classifier (SRC)    classification    self-paced learning    weighting coefficient    face recognition    
0 引言

人脸识别作为模式识别中最为典型的方向,已广泛应用于银行监控系统、自动门卫系统、公安系统中的罪犯身份识别等领域[1]。然而,人脸图像受表情变化、光照及遮挡等因素影响,使得其在应用中受到限制。为了提高人脸识别的准确率,一般要先进行人脸图片的预处理,主要有人脸检测和人脸矫正,人脸检测的方法有基于特征的方法、基于知识的方法[2]、模板匹配法[3]等;人脸矫正主要通过旋转、缩放和镜像变化[4-5]等。然后进行特征提取,将数据投影到低维特征子空间,如主成分分析[6]、二维主成分分析[7]、线性判别分析[8]、拉普拉斯特征映射[9]等,另一个最关键的是构造分类器,如支持向量机[10]、神经网络[11]等, 目前最广泛分类器就是最近邻分类器[12]。但是,利用训练数据中最近的样本去判断待测数据的类别,这并不鲁棒,容易受到噪声的影响。最近特征子空间[13-15]作为最近邻的推广,其会用到同一类的所有训练数据去逼近待测数据,哪一类的逼近误差最小,从而判断待测数据的类别。但是当不同类中的数据高度相关时,最近特征子空间的方法可能失效。为了解决这个问题,提出了基于稀疏表示的分类方法(Sparse Representation based Classifier, SRC)[16]。不同于最近特征子空间的方法,SRC用所有类别的训练数据去共同表示待测数据,并对待测样本的表示系数进行稀疏编码,这使得SRC算法在识别人脸数据时,可以克服噪声或遮挡严重等不利影响,促进了基于稀疏表示人脸识别的研究。Elhamifar等[17]利用结构稀疏表示提出了更为鲁棒的分类方法,Gao等[18]提出了稀疏表示的核学习版本,Wang等[19]提出了局部约束的稀疏表示方法,Liu等[20]提出了非负约束的稀疏表示方法。但基于稀疏表示的分类方法存在一个弊端,当用训练样本重建待测样本时,有时会利用到与待测样本相差较大的训练样本,导致分类结果较差。

自步学习[21]是一种来源于人类学习机制的方法,人们对于知识的摄取都是由易到难,同样在机器学习中,也可以利用这一思想,让算法循序渐进地学习。通过每个训练样本的训练误差来刻画难易程度,给定某个阈值,当训练误差大于阈值时,此样本为“困难”样本,反之则为“简单”样本。先通过“简单”样本确定算法参数,再增大阈值,重新划分“简单”样本和“困难”样本,更新算法参数,这样反复进行下去, 直到收敛。Zhao等[22]提出了自步学习的矩阵分解方法并从优化的目标函数对其进行解释[23]。Kumar等[21]提出了隐含变量模型的自步学习方法。李豪等[24]提出了基于进化多目标优化的自步学习方法。本文将自步学习与加权稀疏表示算法相结合,通过图像之间的欧氏距离刻画样本的难易程度,循序渐进地表示待测样本,可以有效剔除字典中与待测样本相差较大的训练样本,避免重建待测样本时利用差距较大的训练样本,同时利用稀疏系数加权考虑样本间的局部信息提高识别的精度和稳定性,从而提出基于自步学习的加权稀疏表示算法。

1 背景知识

给定足够多的C个类训练样本,一个基本问题就是如何判断待测样本y所属类别。将第C类的所有nc个训练样本拉成列向量构成矩阵Xc=[x1C, x2C, …, xncC]。把所有C类训练样本构成一个大矩阵X=[X1X2, …, XC]∈Rm×n,其中m为样本的维数, n为所有训练样本个数n=$\sum\limits_{c = 1}^C {} $nc

1.1 基于稀疏表示分类器

基于稀疏表示分类器可以当作广义的最近特征子空间方法。假设属于C类的待测样本只由其所属类的所有训练样本表示,而其他类别不参加表示。其公式表示如下:

$\mathit{\boldsymbol{y}} = \mathit{\boldsymbol{X}}{\mathit{\boldsymbol{\alpha }}_0}$ (1)

其中:α0=[0T, α0cT, 0T]∈Rn,系数α0中非0元素只与第C类所有训练样本相关,其他元素均为0。所以基于稀疏表示的分类问题就转化成求解向量0范数最小化问题:

$\begin{array}{l} \quad {{\mathit{\boldsymbol{\bar \alpha }}}_0} = {\rm{arg}}\;{\rm{min ||}}\mathit{\boldsymbol{\alpha }}{\rm{|}}{{\rm{|}}_{\rm{0}}}{\rm{ }}\\ {\rm{ s}}{\rm{.t}}\;\mathit{\boldsymbol{y}} = \mathit{\boldsymbol{X\alpha }} \end{array}$ (2)

其中‖·‖0l0范数,表示向量α中非零元素的个数。但求解此问题是一个NP-hard问题[25]。压缩感知理论[26-27]揭示了当向量α足够稀疏时,最小化l0问题等同于l1最小化问题:

$\begin{array}{l} \quad {{\mathit{\boldsymbol{\bar \alpha }}}_1} = {\rm{arg}}\;{\rm{ min ||}}\mathit{\boldsymbol{\alpha }}{\rm{|}}{{\rm{|}}_{\rm{1}}}{\rm{ }}\\ {\rm{ s}}{\rm{.t }}\;\mathit{\boldsymbol{y}} = \mathit{\boldsymbol{X\alpha }} \end{array}$ (3)

当考虑遮挡或噪声的情况,其可以扩展成以下形式:

$\begin{array}{l} \quad {{\mathit{\boldsymbol{\bar \alpha }}}_1} = \arg \;{\rm{min ||}}\mathit{\boldsymbol{\alpha }}{\rm{|}}{{\rm{|}}_1}{\rm{ }}\\ {\rm{s}}{\rm{.t ||}}\mathit{\boldsymbol{y}}{\rm{ - }}\mathit{\boldsymbol{X\alpha }}||_2^2 \le \varepsilon \end{array}$ (4)

其中ε>0。针对此优化问题有很多成熟算法如内点法[28]、同伦法[29]、增广拉格朗日乘子法[30]等,求出稀疏系数α后,利用与最近特征分类器相同的准则判断待测样本类别,判断准则均为$\mathop {{\rm{min}}}\limits_c $y-Xcαc22

与其他的人脸识别方法相比,特征提取方法对基于稀疏表示的人脸识别已不那么重要。如果数据的特征维数足够大,即使是随机投影或下采样这种简单的提取特征方法,也可以获得较好结果,所以本文实验中利用下采样这种特征提取方法。

1.2 自步学习

自步学习的思想来源于人类学习机制,人类的学习过程都是由易到难的过程,所以在机器学习模型中也可以引入这样的机制。对于n个训练样本,利用损失值的大小刻画样本的难易程度,用L(yi, f(xi, w))表示损失函数,yi为真实值,f(xi, w)为学习器估计值,w为学习器中的参数,xi为训练样本。引入一个权值变量v=[v1, v2, …, vn]T,自步学习的数学模型如下:

$\mathop {\min }\limits_{w,v \in {{[0,1]}^n}} E(w,\mathit{\boldsymbol{v}};\lambda ) = \sum\limits_{i = 1}^n {{v_i}L({y_i},f({x_i},w))} - \lambda \sum\limits_{i = 1}^n {{v_i}} {\rm{ }}$ (5)

其中λ为控制学习步长的参数。此优化问题可由交替搜索方法[31]解决,在每次迭代中先固定学习器参数w,这样权值变量的最优解v*=[v1*, v2*, …, vn*],即为:

$v_i^* = \left\{ \begin{array}{l} 1,{\rm{ }}L({y_i},f({x_i},w)) < \lambda \\ 0,{\rm{ }}其他 \end{array} \right.$

一种直观的解释,当w固定时,如果训练样本的损失小于λ时,其被当作“简单”的样本,这样就被选入训练过程(vi*=1);反之,不会被选入(vi*=0)。这样当权值v固定时,就相当于只训练“简单”样本,确定学习器参数w。其中参数λ相当于模型“年龄”参数,当λ较小时,只有损失值较小的“简单”样本才会考虑进来。随着λ的增加,“困难”的样本才会考虑进来,就好比人类的学习过程。

2 基于自步学习的加权稀疏表示分类

基于稀疏表示的分类器在重建待测样本时,有时会用到与待测样本相差较大的训练样本,导致识别精度下降。为了有效避免这一情况,本文在基于稀疏表示分类算法中利用自步学习机制,让其表示过程从易到难逐步进行。为此在训练样本中定义“简单”样本和“困难”样本,这样在重建待测样本时,不会用到“困难”样本,从而克服基于稀疏表示的这一弊端。不同于自步学习利用损失函数的定义方式,本文利用图像之间的距离来刻画难易程度,在训练样本中通过加权的方式,挑选“简单”样本,如果训练样本与待测样本的距离大于某一阈值,则权值为0, 反之为1,从而保证在表示待测样本时不会用到相差较大的训练样本。

基于稀疏表示的分类方法往往会丢失局部信息,Yu等[32]提出在一些特定的假设之下局部信息比稀疏性更为重要,因此在稀疏编码过程中利用加权稀疏表示方法,其既能保留测试样本和其较近训练样本的相似性又能找到稀疏表示[33]

通过这两点提出了基于自步学习的加权稀疏表示分类方法,主要包括两个步骤:首先要求出自步学习的加权稀疏系数α,然后根据稀疏系数α进行分类。本文将所有训练样本构成字典X=[X1X2,…,XC]∈Rm×n,定义加权矩阵WRn×n,自步学习矩阵VRn×nWV均是一对角矩阵,其数学模型如下:

$\begin{array}{l} \quad \mathit{\boldsymbol{\bar \alpha }} = \arg \;{\rm{ min ||}}\mathit{\boldsymbol{W\alpha }}{\rm{|}}{{\rm{|}}_{\rm{1}}}{\rm{ }}\\ {\rm{s}}{\rm{.t }}\;\mathit{\boldsymbol{y}} = \mathit{\boldsymbol{XV\alpha }} \end{array}$ (6)

其中加权矩阵W根据待测样本y和训练样本xik间的距离构造,具体如下:

${\rm{diag}}(\mathit{\boldsymbol{W}}) = \frac{{{{[dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_1^1),dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_1^2), \cdots ,dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_{{n^c}}^C)]}^{\rm{T}}}}}{{\max (dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_1^1),(dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_2^1), \cdots ,dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_{{n^c}}^C))}}{\rm{ }}$ (7)

其中diag(W)表示W对角元素构成的向量。

$\begin{array}{c} dist(\mathit{\boldsymbol{y}},\mathit{\boldsymbol{x}}_i^k) = \exp \left[ {(||\mathit{\boldsymbol{y}} - \mathit{\boldsymbol{x}}_i^k||/\sigma )} \right]{\rm{ ;}}\\ k = 1,2, \cdots C,i = 1,2 \cdots {n^c} \end{array}$

这种加权可以更好地说明测试样本和训练样本之间的相似性。

自步学习矩阵V根据待测和训练样本间距离是否大于阈值λ构造,V的对角元素vii表示如下:

${v_{ii}} = \left\{ \begin{array}{l} {\rm{ }}1,{\rm{ }}||\mathit{\boldsymbol{y}}{\rm{ - }}\mathit{\boldsymbol{x}}_i^k|{|_2} \le \lambda \\ {\rm{ }}0,{\rm{ }}||\mathit{\boldsymbol{y}}{\rm{ - }}\mathit{\boldsymbol{x}}_i^k|{|_2} > \lambda {\rm{ }} \end{array} \right.$ (8)

参数λ相当于自步学习中的“年龄”参数。其直观理解为当待测样本与训练样本不相似时,会把其当作“困难”样本从而不参与稀疏表示。随着参数λ的增加,“困难”样本会逐渐被选进字典参与表示。这种循序渐进的表示可以有效避免利用相差较大的训练样本。基于自步学习的加权稀疏系数α的求解过程如算法1所示。

算法1  求解自步学习的加权稀疏系数α

输入  训练图片所构成矩阵X,待测图片y,变量σλεμ>1。

输出  自步学习的加权稀疏系数α

While not convergence do

1) 根据式(7),(8) 确定矩阵WiVi,令y1*=y

2) 通过优化下式,对待测图片进行编码

${{\mathit{\boldsymbol{\bar \alpha }}}_i} = {\rm{arg}}\;{\rm{min}}{\left\| {{\mathit{\boldsymbol{W}}_i}\mathit{\boldsymbol{\alpha }}} \right\|_1}$

s.t. yi*=XiViα

3) 计算实际输出:yi+1*=X${{\mathit{\boldsymbol{\bar \alpha }}}_i}$。

4) 更新参数λ=μλ

5) 检验是否收敛(‖yi+1*-yi*2)/‖yi*2ε或达到最大迭代次数n

end while

求得自步学习的加权稀疏系数α后,基于自步学习的加权稀疏表示分类算法如下:

算法2   SPL-WSRC(Self-Paced Learning Weight Sparse Representation based Classifier)。

输入  训练图片所构成矩阵X,待测图片y

输出  待测图片y的类别。

1) 将矩阵X每列和待测图片y标准化。

2) 通过算法1求自步学习的加权稀疏系数α

3) 计算残差ri=‖y-Xiαi2,其中αi对应矩阵中Xi的系数。

4) 预测待测图片y的类别:类别(y)=$\mathop {{\rm{arg}}\;{\rm{min}}}\limits_i ${ri}。

注意,算法1中第2) 步在优化式(6) 时,要做一个等价的变形,令β=

$\begin{array}{l} \quad \mathit{\boldsymbol{\bar \beta }} = \arg \;{\rm{min ||}}\mathit{\boldsymbol{\beta }}{\rm{|}}{{\rm{|}}_{\rm{1}}}\\ {\rm{ s}}{\rm{.t}}\;\mathit{\boldsymbol{y}} = \mathit{\boldsymbol{XV}}{(\mathit{\boldsymbol{W}})^{ - 1}}\mathit{\boldsymbol{\beta }}{\rm{ }} \end{array}$

这样可以直接利用求解式(3) 的优化方法,本文SRC和SPL-WSRC算法中求解最小化问题均采用同伦算法[29]

3 实验及参数设置

本文所有实验在Windows下Matlab (2014b)版本,处理器为Intel Xeon E5-2630 2.4 GHz、内存为64 GB的PC上执行。相对于SRC算法,SPL-WSRC算法涉及更多的参数主要有λσμn。其中“年龄”参数λ控制选入样本的“难易”程度,主要由数据集中样本间的欧氏距离确定,设定较大的初值λ, 这样保证最初选入较多的样本, 如果样本选择过少,会降低算法识别精度。另一个重要参数是最大迭代次数n,实验显示通常迭代5或6次即能得到稳定结果,σμ设定参照了前人的工作[19, 30]。本文实验中λ=1600,σ=1.5,μ=1.1,ε=10-4,最大迭代次数n=5。在求解式(6) 时用到了SPAMS工具包[31-32]中mexLassoWeighted函数。

本文选择AR[36]、Feret[37]和Cropped YaleB[38]3个典型的人脸数据集进行比较实验。如表 1所示:AR数据集包括50个男性和50个女性的人脸图片,每个人均有26张图片,其中图片包括光照、表情、伪装(戴墨镜、围巾)等变化情况。Feret数据集包含14051张多姿态,多光照的人脸图像,是人脸识别领域应用广泛的人脸数据库之一,而本文选择了Feret数据集的一个子集,包含72个人,每人只有6张正面图片,这样可以考察每个人人脸图片较少时,算法性能情况。Cropped YaleB数据集包含38个人的人脸,每个人有65张图片,人脸图片是在不同光照下采集的。

表 1 实验中各人脸数据集中的属性及特点 Table 1 Attributes and characteristics of face database in the experiments

比较实验中除本文方法外还有最近邻分类器(Nearest Neighbor, NN)、基于稀疏表示的分类器(Sparse Representation based Classifier, SRC)、加权稀疏表示分类器(Weight Sparse Representation based Classifier, WSRC),其中WSRC只考虑样本间的局部信息,并没有引入自步学习的思想。本文对每个数据集设置3个实验:第一个实验利用下采样的特征提取方式在不同维数下对4个算法进行比较,将数据集中编号为奇数的图片作为训练样本,编号为偶数的图片作为测试样本。这样AR、Feret和Cropped YaleB分别有1300、216、1254张训练图片,1300、216、1216张测试图片。第2个实验则固定人脸图片下采样的大小,均为20×15这样数据维数均为300;然后将3个数据集中每个人的图片随机分成两部分,一部分作为训练集,另一部分用于测试,随机进行10次实验,取其均值、标准差以及平均测试时间进行比较。第三个实验则对不同“年龄”参数λ进行分析。

3.1 实验一

图 1~3展示了不同数据集中4种算法在不同特征维数下识别率的变化。

图 1 AR数据集中各算法在不同维数下的识别率比较 Figure 1 Recognition rate versus different dimensionality on AR
图 2 Feret数据集中各算法在不同维数下的识别率比较 Figure 2 Recognition rate versus different dimensionality on Feret
图 3 Cropped YaleB数据集中各算法在不同维数下的识别率比较 Figure 3 Recognition rate versus different dimensionality on Cropped YaleB

采用下采样的特征提取方式,图片下采样为10×5、15×10、20×15、25×20、30×25,对应维数为50、150、300、500、750。可以看出4种算法的识别率均随着特征维数增加而增加,当维数达到500时,所有数据集中的识别率基本趋于平稳,即使特征维数继续增加,识别率变化不大。SRC、WSRC、SPL-WSRC 3个算法的识别效果在3个数据集上均要明显优于NN算法。只考虑样本间局部信息的WSRC算法性能介于SRC和SPL-WSRC算法之间。

图 1~3可以看出,在AR和Cropped YaleB数据集下SPL-WSRC算法在所有维数下均取得最高识别率,而在Feret数据集中当维数取50时,SRC、WSRC和SPL-WSRC算法识别率相同,均为82.41%,但随着维数的不断增加,SPL-WSRC算法的识别率才逐渐优于SRC、WSRC算法。AR和Feret数据集中表示SPL-WSRC的线段与表示SRC、WSRC的线段间距离较小,而在Cropped YaleB中两者之间的距离较大,所以说SPL-WSRC算法在Cropped YaleB下的提升效果最为明显。

为了更为直观地理解所提算法的优势,以AR数据集中第21个人编号为12的人脸图片为例,当维数取300,奇数编号训练,偶数编号测试时,SRC算法会将其识别为第22个人如图 4, 而SPL-WSRC算法仍能正确识别。这张人脸图片在SRC和SPL-WSRC算法下所求得的稀疏系数如图 5所示。横坐标用方框所框区间是261~273,最理想的情况就是系数α的非零值全部落入此区间,这是因为第21个人的待测人脸图片应该由第21个人的所有训练图片表示,每个人有13张训练图片,这样前20人的训练图片构成矩阵中第1~260列,第21人的所有训练图片对应261~273列。尽管SRC算法和SPL-WSRC算法均没有出现此情况。但从图中可以看到,在表示待测样本时,SRC算法用到其他类别训练样本9张(非方框区间的非零值个数),SPL-WSRC算法只用到了5张,并且提高了所属类别训练样本的表示比重(方框区间内非零值变大)。这也正是SPL-WSRC算法能够提高识别率和稳定性的关键。

图 4 SRC算法第21人识别为第22人 Figure 4 The 21th person is identified as the 22nd person in AR by SRC
图 5 AR数据集中不同算法求得的稀疏系数α Figure 5 Sparse coefficients α of different algorithms for AR
3.2 实验二

实验二中,每人的训练样本随机选择,但其选择个数固定为t,对应每人的测试样本数分别为26-t、6-t、65-t表 23分别展示了AR、Feret和Cropped YaleB数据集在t取值不同时,不同算法10次实验的平均测试精度和平均测试时间(表中±部分表示标准差)。表 2中加粗部分表示最好的识别结果。在AR数据集中SPL-WSRC算法精度上优于SRC、WSRC算法,并且标准差更小。当训练样本数为16时,SPL-WSRC相较于SRC、WSRC算法识别精度分别高了1.26%、0.82%,而当训练样本数为10、12、14时,其识别率相较于SRC分别高了0.5%、0.91%、1.01%, 相较于WSRC分别高了0.29%、0.51%、0.92%。而在平均测试时间上,由于SPL-WSRC算法是一种循序渐进的表示过程,所以运行时间较长。

表 2 各算法随训练样本数变化的测试精度比较 Table 2 Comparison of test accuracy for different algorithms with different number of training samples
表 3 各算法随训练样本数变化的测试时间比较  s Table 3 Comparison of test time for different algorithms with different number of training samples  s

Feret中当每人训练样本数为2时,SPL-WSRC算法的识别率要低于SRC算法,但高于WSRC算法。当训练样本数增加时,SPL-WSRC和WSRC算法才逐渐优于SRC算法。当训练样本数分别为3、4、5时,SPL-WSRC算法相较于SRC算法的识别率分别高了0.8%、1.01%、1.23%,相对于WSRC识别率分别高了0.45%、0.85%、1.02%。针对这一情况,图 6给出了SRC和SPL-WSRC算法下求得的稀疏系数α,此时待测图片是Feret数据集中第23个人编号为5的人脸图片, 维数取300,每人编号为1、2的人脸图片构成训练集。尽管SRC表示待测样本时用到其他类别训练样本9张,SPL-WSRC算法仅为5张,但也剔除了其所属类别的训练样本,导致SPL-WSRC错误识别,而SRC识别正确。

图 6 Feret数据集中不同算法求得的稀疏系数α Figure 6 Sparse coefficients α of different algorithms for Feret

在Cropped YaleB数据集下SPL-WSRC算法优于SRC和WSRC算法,当训练样本数分别为25、30、35、40时,SPL-WSRC的识别率要比SRC算法分别高1.17%、2.41%、2.9%、2.82%,比WSRC算法分别高0.98%、1.72%、1.84%、1.94%。相较于前两个数据集,所提算法的优势更为明显。

从实验结果可以看出,本文所提SPL-WSRC算法在多数情况下识别率及标准差均优于NN、SRC和WSRC算法,只有在Feret数据集中当每人训练样本很少时,SPL-WSRC算法稍差于SRC算法,但仍然优于只考虑加权的WSRC算法。

在Cropped YaleB数据集中SPL-WSRC算法识别率提升效果最为明显。与此同时,对于这3个人脸数据集,当每个人的训练样本数增加时,SPL-WSRC算法相较于SRC算法识别精度的提高值更大。这是因为当每类训练样本很少时,依然按照由简到难的方式学习,有很大概率剔除一些相对重要的样本从而影响识别精度,而当训练样本充足时,会避免这一情况。因此,本文所提算法更适用于训练样本较多的情况,有利于SPL-WSRC算法进行样本筛选。

3.3 实验三

在SPL-WSRC中,“年龄”参数λ决定着“困难”样本的选择,其对最终结果影响较大,AR、Feret和Cropped YaleB中编号为奇数的图片作为训练集,编号为偶数的为测试集,图片均下采样为25×20,当其他参数选取一致时,识别率与参数λ的关系如表 4,可以看到当其取值较小时,识别精度很低,这是由于一开始字典中很多样本被当作“困难”样本被剔除,过多的样本剔除降低了字典的表示能力; 但随着参数λ的不断增加,三个数据集中识别率不断上升,均在λ=1600时,达到最优。而当λ继续增加时,SPL-WSRC算法性能有所下降,并与WSRC算法性能相近,这是因为当λ取值较大时,会将所有样本当作“简单”样本参与表示,从而失去了自步学习的意义。

表 4 3个人脸数据集中SPL-WSRC在不同λ取值下识别率比较  % Table 4 Recognition rate of SPL-WSRC under different values of λ on three face databases  %
4 结语

针对基于稀疏表示的分类方法存在的弊端,本文在自步学习和加权方法的启发下,提出了基于自步学习的加权稀疏表示分类算法,其可以有效剔除与待测样本相差较大的训练样本,避免重建待测样本时利用差距较大的训练样本,并且在表示系数上加权可以有效考虑样本间的局部信息。通过3个特点各异的人脸数据集,验证了SPL-WSRC相对于NN、SRC和WSRC算法,可以有效提高人脸识别的精度和稳定性,特别是当训练样本较多时,提高效果更为明显,但SPL-WSRC算法在运行时间上并不占优。未来工作中会在其他SRC的改进算法引入自步学习思想,如加核学习、局部约束、鲁棒稀疏编码等,进一步研究自步学习对于算法性能的提升。

参考文献(References)
[1] 梁路宏, 艾海舟, 徐光祐, 等. 人脸检测研究综述[J]. 计算机学报, 2002, 25(5): 449-458. (LIANG L H, AI H Z, XU G Y, et al. A survey of human face detection[J]. Chinese Journal of Computers, 2002, 25(5): 449-458.)
[2] YANG G, HUANG T S. Human face detection in a complex background[J]. Pattern Recognition, 1994, 27(1): 53-63. DOI:10.1016/0031-3203(94)90017-5
[3] SAKAI T, NAGAO M, FUJIBAYASHI S. Line extraction and pattern detection in a photograph[J]. Pattern Recognition, 1969, 1(3): 233-236. DOI:10.1016/0031-3203(69)90006-5
[4] ROWLEY H, BALUJA S, KANADE T. Neural network-based face detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1998, 20(1): 23-38. DOI:10.1109/34.655647
[5] KARUNGARU S, FUKUMI M, AKAMATSU N. Human face detection in visual scenes using neural networks[J]. Advances in Neural Information Processing Systems, 1997, 8(6): 995-1000.
[6] TURCK M A, PENTLAND A P. Face recognition using eigenfaces[C]//Proceedings of the 1991 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 1991:586-591.
[7] 陈伏兵, 陈秀宏, 高秀梅, 等. 二维主成分分析方法的推广及其在人脸识别中的应用[J]. 计算机应用, 2005, 25(8): 1767-1770. (CHEN F B, CHEN X H, GAO X M, et al. Generalization of 2DPCA and its application in face recogniiton[J]. Journal of Computer Applications, 2005, 25(8): 1767-1770.)
[8] BELHUMEUR P N, HESPANHA J, KRIEGMAN D J. Eigenfaces vs. Fisherfaces:recognition using class specific linear projection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1996, 19(7): 711-720.
[9] HE X, YAN S, HU Y, et al. Face recognition using Laplacian faces[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2005, 27(3): 328-340. DOI:10.1109/TPAMI.2005.55
[10] OSUNA E, FREUND R, GIROSIT F. Training support vector machines:an application to face detection[C]//Proceedings of the 1997 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 1997:130-136.
[11] MENG J E, WU S, LU J. Face recognition using Radial Basis Function (RBF) neural networks[C]//Proceedings of the 1999 IEEE Conference on Decision and Control. Piscataway, NJ:IEEE, 1999:2162-2167.
[12] COVER T, HART P. Nearest neighbor pattern classification[J]. IEEE Transactions on Information Theory, 1967, 13(1): 21-27. DOI:10.1109/TIT.1967.1053964
[13] SHAN S, GAO W, ZHAO D. Face identification from a single example image based on Face-Specific Subspace (FSS)[C]//Proceedings of the 2002 IEEE International Conference on Acoustics, Speech, and Signal Processing. Piscataway, NJ:IEEE, 2002:2125-2128.
[14] SHAN S, GAO W, ZHAO X, et al. Novel face recognition based on individual eigen-subspaces[C]//Proceedings of the 2000 IEEE International Conference on Signal Processing. Piscataway, NJ:IEEE, 2000:1522-1525.
[15] LIU X, CHEN T, KUMAR B V K V. Face authentication for multiple subjects using eigenflow[J]. Pattern Recognition, 2003, 36(2): 313-328. DOI:10.1016/S0031-3203(02)00033-X
[16] WRIGHT J, YANG A Y, GANESH A, et al. Robust face recognition via sparse representation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008, 31(2): 210-227.
[17] ELHAMIFAR, VIDAL R. Robust classification using structured sparse representation[C]//Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2011:1873-1879.
[18] GAO S, TSANG W H, CHIA L T. Kernel sparse representation for image classification and face recognition[C]//Proceedings of the 11th European Conference on Computer Vision. Berlin:Springer, 2010:1-14.
[19] WANG J, YANG J, YU K, et al. Locality-constrained linear coding for image classification[C]//Proceedings of the 2010 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2010:3360-3367.
[20] LIU Y, WU F, ZHANG Z, et al. Sparse representation using nonnegative curds and whey[C]//Proceedings of the 2010 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2010:3578-3585.
[21] KUMAR M P, PACKER B, KOLLER D. Self-paced learning for latent variable models[C]//Proceedings of the 23rd International Conference on Neural Information Processing Systems. Vancouver:Curran Associates Inc., 2010:1189-1197.
[22] ZHAO Q, MENG D Y, LU J, et al. Self-paced learning for matrix factorization[C]//Proceedings of the 2015 AAAI Conference on Artificial Intelligence. Menlo Park, CA:AAAI, 2015:3196-3202.
[23] MENG D Y, ZHAO Q. What objective does self-paced learning indeed optimize?[EB/OL].[2016-11-20]. http://lanl.arxiv.org/pdf/1511.06049.pdf.
[24] 李豪, 公茂果. 基于进化多目标优化的自步学习方法研究[EB/OL]. [2017-04-27]. http: //www. paper. edu. cn/releasepaper/content/201704-670. (LI H, GONG M G. Research on self-paced learning based on evolutionary multi-objective optimization[EB/OL].[2017-04-27].http://www.paper.edu.cn/releasepaper/content/201704-670.)
[25] AMALDI E, KANN V. On the approximability of minimizing nonzero variables or unsatisfied relations in linear systems[J]. Theoretical Computer Science, 1998, 209(1/2): 237-260.
[26] DONOHO D L. For most large underdetermined systems of linear equations the minimal L1-norm solution is also the sparsest solution[J]. Communications on Pure and Applied Mathematics, 2006, 59(6): 797-829. DOI:10.1002/(ISSN)1097-0312
[27] CANDES E J, ROMBERG J K, TAO T. Stable signal recovery from incomplete and inaccurate measurements[J]. Communications on Pure and Applied Mathematics, 2005, 59(8): 1207-1223.
[28] KOJIMA M, MEGIDDO N, MIZUNO S. Theoretical convergence of large-step primal-dual interior point algorithms for linear programming[J]. Mathematical Programming, 1993, 59(1): 1-21.
[29] OSBOME M R, PRESNELL B, TURLACH B A. A new approach to variable selection in least squares problems[J]. IMA Journal of Numerical Analysis, 2000, 20(3): 389-403. DOI:10.1093/imanum/20.3.389
[30] BERTSEKAS D P. Constrained Optimization and Lagrange Multiplier Methods[M]. New York: Athena Scientific, 1982: 383-392.
[31] GORSKI J, PFEUFFER F, KLAMROTH K. Biconvex sets and optimization with biconvex functions:a survey and extensions[J]. Mathematical Methods of Operations Research, 2007, 66(3): 373-407. DOI:10.1007/s00186-007-0161-1
[32] YU K, ZHANG T, GONG Y. Nonlinear learning using local coordinate coding[C]//Proceedings of the 22nd International Conference on Neural Information Processing Systems. Vancouver:Curran Associates Inc. 2009:2223-2231.
[33] LU C Y, MIN H, GUI J, et al. Face recognition via weighted sparse representation[J]. Journal of Visual Communication and Image Representation, 2013, 24(2): 111-116. DOI:10.1016/j.jvcir.2012.05.003
[34] MAIRAL J, BACH F, PONCE J, et al. Online dictionary learning for sparse coding[C]//Proceedings of the 26th Annual International Conference on Machine Learning. New York:ACM, 2009:689-696.
[35] MAIRAL J, BACH F, PONCE J, et al. Online learning for matrix factorization and sparse coding[J]. Journal of Machine Learning Research, 2009, 11(1): 19-60.
[36] MARTINEZ A M. The AR face database[EB/OL].[2016-11-20].https://www.researchgate.net/publication/243651904_The_AR_face_database.
[37] PHILLIPS P J, WECHSLER H, HUANG J, et al. The FERET database and evaluation procedure for face-recognition algorithms[J]. Image and Vision Computing, 1998, 16(5): 295-306. DOI:10.1016/S0262-8856(97)00070-X
[38] LEE K C, HO J, KRIEGMAN D J. Acquiring linear subspaces for face recognition under variable lighting[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2005, 27(5): 684-698. DOI:10.1109/TPAMI.2005.92