人脸识别作为人工智能研究的热点[1-3], 在人脸检测[4]、身份鉴定[5-6]等方面被广泛应用。特征提取是人脸识别的基础, 其经典方法主成分分析(Principle Component Analysis, PCA)[7]将高维空间数据向样本方差最大的方向投影到低维空间, 从而实现降维的目的。然而当样本协方差矩阵较大时, PCA求解特征值和特征向量较为困难。为此, 文献[8]提出二维主成分分析(Two-Dimensional Principle Component Analysis, 2DPCA)法, 其样本协方差矩阵只与图片尺寸有关, 故相应的协方差矩阵较小, 更易求解特征值和特征向量。进一步地, 文献[9]提出双向二维主成分分析(Two-Direction Two-Dimensional Principle Component Analysis, (2D)2PCA)法, 在图片的行列方向同时进行降维, 得到的协方差矩阵更小, 求解投影矩阵的速度更快。
由于PCA方法容易受到异常样本的影响, 因此研究人员采用L1范式对其约束, 以提高算法的鲁棒性, 代表方法有PCA-L1[10]、2DPCA-L1[11]、R1-PCA[12]。但上述方法提取出的特征仍然是密集的特征, 而研究人员希望从大量特征中选出最相关或者最突出的特征, 以进一步精简模型。因此, 文献[13]提出的稀疏建模受到广泛的关注, 并有研究人员尝试将稀疏化理论运用于PCA, 例如文献[14]提出稀疏的主成分分析方法(Sparse Principle Component Analysis, SPCA), 文献[15]提出结构化SPCA, 文献[16]证明了在L1范式约束下SPCA的鲁棒性。
本文将基于L1范数的SPCA推广到(2D)2PCA中, 提出(2D)2PCA-L1S方法, 采用L1范数约束提高鲁棒性, 并在目标函数中加入弹性网[14]约束实现稀疏化。
1 鲁棒稀疏的(2D)2PCA方法 1.1 (2D)2PCA方法(2D) 2PCA可以直接对二维图像行和列2个方向同时进行降维, 其协方差矩阵只与图片的尺寸有关, 故协方差维数较小, 求解投影矩阵较为容易。
设样本图片集X={x1, x2, …, xN}, 每张图片的尺寸为m×n, 则训练样本行方向的协方差矩阵为:
$ \mathit{\boldsymbol{G}}_t^{\rm{r}} = \frac{1}{N}\sum\limits_{i = 1}^N {{{\left( {{{\mathit{\boldsymbol{\overline x}} }_i}} \right)}^{\rm{T}}}} (\mathit{\boldsymbol{\overline x}} ) $ | (1) |
其中,
$ \mathit{\boldsymbol{G}}_t^{\rm{c}} = \frac{1}{N}\sum\limits_{i = 1}^N {\left( {{{\mathit{\boldsymbol{\overline x}} }_i}} \right)} {(\mathit{\boldsymbol{\overline x}} )^{\rm{T}}} $ | (2) |
将协方差矩阵Gtc的前q个最大特征值对应的特征向量, 组成列方向的最佳投影方向Zopt=[Z1, Z2, …, Zq]。获得图片在行和列上的投影矩阵之后, 将尺寸为m×n的图片向这2个方向投影, 得到q×p的特征矩阵:
$ {\mathit{\boldsymbol{c}}_i} = {\mathit{\boldsymbol{Z}}^{\rm{T}}}{\mathit{\boldsymbol{x}}_i}\mathit{\boldsymbol{X}},i = 1,2, \cdots ,N $ | (3) |
基于L2范数的(2D)2PCA在遇到异常值时表现不稳定, 而基于L1范数的(2D)2PCA对异常值不敏感, 具有较好的鲁棒性。假设
$ g(\mathit{\boldsymbol{v}}) = \sum\limits_{i = 1}^N {{\rm{||}}{\mathit{\boldsymbol{x}}_i}\mathit{\boldsymbol{v}}{\rm{|}}{{\rm{|}}_1}} ,{\rm{ s}}{\rm{. t}}{\rm{. ||}}\mathit{\boldsymbol{v}}{\rm{|}}{{\rm{|}}_2} = 1 $ | (4) |
令
$ g(\mathit{\boldsymbol{v}}) = \sum\limits_{i = 1}^N {\sum\limits_{j = 1}^m {\left| {{\mathit{\boldsymbol{v}}^{\rm{T}}}{\mathit{\boldsymbol{x}}_{ji}}} \right|} } $ | (5) |
使用迭代算法寻得最优v*:
$ \mathit{\boldsymbol{v}}(t + 1) = \frac{{\sum\limits_{i = 1}^N {\sum\limits_{j = 1}^m {{s_{ji}}} } (t){\mathit{\boldsymbol{x}}_{ji}}}}{{{\rm{||}}\sum\limits_{i = 1}^N {\sum\limits_{j = 1}^m {{s_{ji}}} } (t){\mathit{\boldsymbol{x}}_{ji}}{\rm{|}}{{\rm{|}}_2}}} $ | (6) |
$ {s_{ji}}(t) = {\rm sign} \left( {{\mathit{\boldsymbol{v}}^{\rm{T}}}(t){\mathit{\boldsymbol{x}}_{ji}}} \right),j = 1,2, \cdots ,m;i = 1,2, \cdots ,N $ | (7) |
迭代直至g(v)收敛最大值。行方向投影矩阵中其余p-1个特征向量和列方向投影矩阵的特征向量组也用同样的迭代方法求得。
1.3 基于L1范数的稀疏化(2D)2PCA方法基于L1范数的(2D)2PCA方法, 由于目标函数中没有权值惩罚项, 求得投影矩阵的权重往往是非零且密集的, 因此提取出的特征是样本所有特征的线性组合, 具有冗余性且语义解释性差。弹性网正则化是惩罚函数Lasso与Ridge的线性组合, 在这2项正则化约束下求得的投影矩阵是稀疏的, 能将高度相关的特征一并选出, 去除冗余成分[17]。因此, 本文提出基于L1范数的稀疏化(2D)2PCA方法((2D)2PCA-L1S), 在目标函数中引入弹性网来实现稀疏性, 目标函数的表达式如下:
$ h(\mathit{\boldsymbol{v}}) = \sum\limits_{i = 1}^N {\sum\limits_{j = 1}^m {\left| {{\mathit{\boldsymbol{v}}^{\rm{T}}}{\mathit{\boldsymbol{x}}_{ji}}} \right|} } - \frac{\eta }{2}{\rm{||}}\mathit{\boldsymbol{v}}{\rm{||}}_2^2 - \lambda {\rm{||}}\mathit{\boldsymbol{v}}{\rm{|}}{{\rm{|}}_1} $ | (8) |
用迭代算法寻找最优的投影矩阵v*, 使h(v)达到最大值。迭代算法以优化行方向投影矩阵为例, 列方向投影矩阵寻优方法与行方向一致。
$ y(t) = \sum\limits_{i = 1}^N {\sum\limits_{j = 1}^m {{s_{ji}}} } (t){\mathit{\boldsymbol{x}}_{ji}} $ | (9) |
$ w(t) = {\left( {\frac{{\left| {{v_1}(t)} \right|}}{{\lambda + \eta \left| {{v_1}(t)} \right|}},\frac{{\left| {{v_2}(t)} \right|}}{{\lambda + \eta \left| {{v_2}(t)} \right|}}, \cdots ,\frac{{\left| {{v_n}(t)} \right|}}{{\lambda + \eta \left| {{v_n}(t)} \right|}}} \right)^{\rm{T}}} $ | (10) |
vk(t)是特征向量v的第k个值:
$ v(t + 1) = y(t)\circ w(t) $ | (11) |
其中, 运算符
文献[18]提出的粒子群优化(Particle Swarm Optimization, PSO)算法求解参数少, 收敛速度快, 已广泛应用于模式识别领域。PSO算法原理是随机产生一定数量的粒子群, 每个粒子的位置都由适应度函数进行打分, 根据分数选出每一种群里最优的粒子, 再产生所有种群里最优的粒子, 然后所有粒子的位置根据这2种最优粒子进行位置的迭代更新, 目的是找到全局最优的位置。
因为SVM惩罚参数和核函数参数的取值对模型识别性能有着决定性的影响, 所以本文利用PSO算法对SVM模型参数进行寻优。SVM核函数选择径向基函数(Radial Basis Function, RBF), 用粒子的x、y坐标值分别代表SVM惩罚参数c和核函数参数g, 评价粒子位置的适应度函数由n折交叉验证下验证集的平均识别率表示, 每一轮迭代在所有的粒子群中选出局部最优和全局最优, 然后所有粒子的位置根据这2个最优值进行迭代更新, 直到达到设置的期望适应度值或者最大迭代次数时停止迭代, 这时全局最优粒子的坐标就是最优参数c和g的值, 参数寻优流程如图 1所示。
![]() |
Download:
|
图 1 利用PSO优化SVM参数的流程 |
实验采用Feret人脸库, 该人脸库包含200人, 每人7幅共1 400幅图像。本文采用最近邻分类器, 随机选取每人4幅图像作为训练集, 剩余3幅作为测试集, 分别利用(2D)2PCA-L1S、PCA、2DPCA、(2D)2PCA和(2D)2PCA-L1方法提取人脸特征并进行人脸识别, 实验结果如图 2所示。
![]() |
Download:
|
图 2 5种方法分类准确率对比 |
从图 2可以看出, 当特征数持续增加时, PCA方法的人脸识别率最低, 其次是2DPCA、(2D)2PCA和(2D)2PCA-L1方法, 它们的识别曲线几乎重叠, 而识别率最高的是(2D)2PCA-L1S方法。这说明在5种方法中, 本文方法能更加精准地提取图像主要信息。
值得注意的是, 在稀疏化的过程中, 可调参数s=lg(η/λ)对算法的性能影响较大。为了验证该可调参数对识别性能的影响, 实验观测(2D)2PCA-L1S方法在s=-3, -1, 0, 1, 3时的人脸识别效果, 结果如图 3所示。结果显示:当s=-3和s=-1时, 分类准确率随着特征数的增加呈现上升的趋势; 而当s=1和s=3时, 分类准确率随着特征数的增加呈现下降的趋势。在实际应用中, 可以根据需求来选择不同的s值以满足稀疏化和识别准确率的要求。
![]() |
Download:
|
图 3 不同稀疏化参数对本文方法识别效果的影响 |
实验选择Yale人脸库, 该人脸库包含15人, 每人11幅共165幅图像, 每幅图像大小为100像素×100像素。随机在20%的图像中添加矩阵噪声, 添加了噪声的异常图像如图 4所示。
![]() |
Download:
|
图 4 包含噪声的图像 |
对噪声污染的Yale数据集, 分别采用PCA、2DPCA、(2D)2PCA、(2D)2PCA-L1和(2D)2PCA-L1S方法进行图像重建, 计算图像重建的平均误差, 结果如图 5所示。
![]() |
Download:
|
图 5 5种方法重构图像的平均误差曲线 |
从图 5可以看出, 随着特征数的增加, 各算法的平均误差均持续下降, (2D)2PCA-L1S算法的平均重构误差明显小于其他方法的平均重构误差。(2D)2PCA-L1曲线数值明显低于(2D)2PCA曲线, 说明基于L1范数的方法能提高算法的鲁棒性, 抗噪声干扰能力增强; (2D)2PCA-L1S曲线数值低于(2D)2PCA-L1曲线, 说明引入稀疏化能增强特征选择的能力。实验还给出了(2D)2PCA-L1S方法中不同的稀疏化参数s取值对图像重构效果的影响, 结果如图 6所示。随着s值的增加, 图像重构的平均误差呈现下降趋势, 当s=3时图像重构效果最好。
![]() |
Download:
|
图 6 不同稀疏化参数下本文方法的平均重构误差 |
实验选择Yale人脸库, 人脸库包含15人, 每人11幅共165幅图像, 每幅图像大小为100像素×100像素。PSO算法的惩罚参数c和RBF参数g均设置为(0, 100](经验值c为2, g为1/k, k为数据样本维数), 搜索参数c1=1.6, c2=1.5, 权重系数w=1, 种群数量为50, 最大迭代数为50, PSO的适应度函数由5折交叉验证下验证集识别率的平均值表示。实验随机选取每人6幅图像作为训练集, 剩余5幅作为测试集。在每次迭代过程中始终对最佳适应度和平均适应度进行比较, 确保得到的参数优化结果是全局最优的。图 7为本文方法在双向维度降至30×30时, 经过PSO算法优化SVM参数得到的最佳适应度和粒子群的平均适应度。
![]() |
Download:
|
图 7 经PSO算法优化后本文方法的适应度 |
从图 7可以看出, 当PSO进化到约4代时, 适应度达到最佳。而平均适应度始终远低于最佳适应度, 这说明经PSO算法优化后的参数更佳, 避免了参数取值陷入局部最优。
表 1为经PSO优化参数c和g后的SVM模型识别率, 表 2为依据经验选取参数c和g的SVM模型识别率。对比表 1和表 2, 经过PSO优化参数的SVM模型识别率明显高于参数经验取值的SVM模型识别率, 表明经PSO优化地模型泛化能力更好。
![]() |
下载CSV 表 1 基于PSO优化SVM参数的人脸图像识别性能 |
![]() |
下载CSV 表 2 SVM取经验值时的人脸图像识别性能 |
针对(2D)2PCA算法对异常值敏感、抗干扰性差以及特征向量不具有稀疏性的问题, 本文提出一种基于L1范数的稀疏(2D)2PCA方法, 不仅提高了算法的鲁棒性, 而且使稀疏化后的特征具有较好的语义解释性。人脸图像的识别和重构以及基于PSO算法优化SVM参数的识别实验结果, 均验证了本文算法的有效性。由于本文实验所采用的人脸数据集规模较小, 因此下一步将扩大实验数据集, 同时改进PSO算法优化SVM参数的过程, 以加强粒子搜寻空间能力。
[1] |
ZHAO W, CHELLAPPA R, PHILLIPS P J, et al. Face recognition:a literature survey[J]. ACM Computing Surveys, 2003, 35(4): 399-458. DOI:10.1145/954339.954342 |
[2] |
YU Qiang, WANG Rong, YANG Xiaojun, et al. Diagonal principal component analysis with non-greedy L1-norm maximization for face recognition[J]. Neurocomputing, 2016, 171: 57-62. DOI:10.1016/j.neucom.2015.06.011 |
[3] |
WANG Haixian. Block principal component analysis with L1-norm for image analysis[J]. Pattern Recognition Letters, 2012, 33(5): 537-542. DOI:10.1016/j.patrec.2011.11.029 |
[4] |
ZENG Dingheng, ZHONG Huicai. An incremental learning face detection algorithm oriented to wireless video browsing[J]. Journal of Chinese Computer Systems, 2014, 35(6): 1357-1357. (in Chinese) 曾定衡, 钟汇才. 面向无线视频浏览的增量学习人脸检测算法研究[J]. 小型微型计算机系统, 2014, 35(6): 1357-1357. |
[5] |
ZHANG Jianming, LIU Yangchun, WU Honglin. Face recognition algorithm based on extreme learning machine and subspace pursuit[J]. Computer Engineering, 2016, 42(1): 168-173. (in Chinese) 张建明, 刘阳春, 吴宏林, 等. 基于极限学习机与子空间追踪的人脸识别算法[J]. 计算机工程, 2016, 42(1): 168-173. |
[6] |
ZHANG Caixia, HU Hongping, BAI Yanping. Face recognition method based on sparse subspace clustering[J]. Fire Control and Command Control, 2017, 42(4): 29-32. (in Chinese) 张彩霞, 胡红萍, 白艳萍. 基于稀疏子空间聚类的人脸识别方法[J]. 火力与指挥控制, 2017, 42(4): 29-32. DOI:10.3969/j.issn.1002-0640.2017.04.007 |
[7] |
JOLLIFFE I T. Principal component analysis[M]. Berlin, Germany: Springer, 1986.
|
[8] |
YANG Jian, ZHANG D, FRANGI A F, et al. Two-dimensional PCA:a new approach to appearance-based face representation and recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2004, 26(1): 131-137. DOI:10.1109/TPAMI.2004.1261097 |
[9] |
ZHANG Daoqiang, ZHOU Zhihua. (2D)2PCA:two-directional two-dimensional PCA for efficient face representation and recognition[J]. Neurocomputing, 2005, 69(1/2/3): 224-231. |
[10] |
KE Qifa, KANADE T. Robust L1-norm factorization in the presence of outliers and missing data by alternative convex programming[C]//Proceedings of 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2005: 739-746.
|
[11] |
LI Xuelong, PANG Yanwei, YUAN Yuan. L1-norm-based 2DPCA[J]. IEEE Transactions on Systems, 2009, 40(4): 1170-1175. |
[12] |
DING C, ZHOU Ding, HE Xiaofeng, et al. R1-PCA: rotational invariant L1-norm principal component analysis for robust subspace factorization[C]//Proceedings of the 23rd International Conference on Machine Learning. New York, USA: ACM Press, 2006: 281-288.
|
[13] |
WRIGHT J, MA Yi, MAIRAL J, et al. Sparse representation for computer vision and pattern recognition[J]. Proceedings of the IEEE, 2010, 98(6): 1031-1044. DOI:10.1109/JPROC.2010.2044470 |
[14] |
ZOU Hui, HASTIE T, TIBSHIRANI R. Sparse principal component analysis[J]. Journal of Computational and Graphical Statistics, 2006, 15(2): 265-286. DOI:10.1198/106186006X113430 |
[15] |
JENATTON R, OBOZINSKI G, BACH F. Structured sparse principal component analysis[J]. Journal of Machine Learning, 2009, 9(2): 131-160. |
[16] |
MENG Deyu, ZHAO Qian, XU Zhongben. Improve robustness of sparse PCA by L1-norm pattern recogni-tion[J]. Pattern Recognition, 2012, 45(1): 487-497. DOI:10.1016/j.patcog.2011.07.009 |
[17] |
ZOU Hui, HASTIE T. Regularization and variable selection via the elastic net[J]. Journal of the Royal Statistical Society, 2005, 67(2): 301-320. DOI:10.1111/j.1467-9868.2005.00503.x |
[18] |
KENEDY J, EBERHART R. Particle swarm optimization[C]//Proceedings of IEEE International Conference on Neural Networks. Washington D. C., USA: IEEE Press, 1995: 1942-1948.
|