网刊加载中。。。

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读

基于相同稀疏模式的稀疏主成分分析算法  PDF

  • 邵剑飞 1
  • 浦蓉 1
  • 黄伟 2
  • 季建杰 1
  • 郭鹏 1
1. 昆明理工大学信息工程与自动化学院,昆明 650500; 2. 云南电网有限责任公司红河供电局,红河 661100

中图分类号: TP391.41

最近更新:2022-10-11

DOI:10.16337/j.1004⁃9037.2022.05.013

  • 全文
  • 图表
  • 参考文献
  • 作者
  • 出版信息
EN
目录contents

摘要

稀疏主成分分析是一种用于降维和特征选择的无监督方法。由于计算多个主成分时主载荷向量间不具有相同的稀疏模式,导致难以从原始特征空间中确定出对主成分贡献最大的小部分变量,为解决此问题,提出一种自适应稀疏主成分分析(Adaptive sparse principal component analysis, ASPCA)算法。首先使用组套索模型,通过在载荷向量上施加块稀疏约束得出自适应稀疏主成分分析公式,随后对稀疏矩阵的不同列使用不同的调整参数获得自适应惩罚,最后运用块坐标下降法对自适应稀疏主成分分析公式进行两阶段优化,从而找到稀疏载荷矩阵和正交矩阵,实现降维的最优化。对稀疏主成分分析(Sparse principal component analysis, SPCA)算法、结构化且稀疏的主成分分析(Structured and sparse principal component analysis, SSPCA)算法和ASPCA算法进行仿真比较,结果表明ASPCA算法的降维性能更优,能提取更有价值的特征,从而显著提高了分类模型的平均分类准确率。

引 言

主成分分析(Principal component analysis, PCA)是数据分析中一种流行的特征提取和降维技

1‑2,被广泛应用于图像和视频分3、图像去4以及面部识5等应用数据分6中。但是,传统PCA的主成分是原始变量的线性组合并且载荷通常为非零,因此稠密的主载荷向量导致主成分缺乏可解释性。而稀疏主成分分析方法是计算具有少量非零项的主载荷向量实现特征选择,同时使模型具备更好的可解释7。Zou8提出了稀疏主成分分析算法(Sparse principal component analysis, SPCA)。SPCA算法首先证明PCA可以表述为回归型优化问题,然后通过对回归系数施加套索(弹性网)约束来获得稀疏载荷,但该算法不能保证在所有主载荷向量上都保留稀疏模式,即非零变量的位置在不同的主载荷向量上是不同的。Jenatton9提出了一种结构化且稀疏的主成分分析算法(Structured and sparse principal component analysis, SSPCA)。SSPCA算法定义了范数的组与由此产生的非零模式之间的关系,提供了从组到模式来回的向前和向后算法,设计适合以非零模式表示的特定先验知识的规范。该算法对主载荷向量的稀疏模式施加约束,但是由于SSPCA算法需要进行通用优化,因此除非事先提供了正确的模式,否则SSPCA算法并不总是能够正确估计所有分量的稀疏模式。

在以上研究的基础上,本文提出了一种自适应稀疏PCA算法(Adaptive sparse principal component analysis, ASPCA)。该算法通过使用组套索模型,在载荷向量上施加块稀疏约束找到最小化的稀疏载荷矩阵和正交矩阵,得出自适应稀疏PCA公式;对稀疏矩阵的不同列使用不同的调整参数以获得自适应惩罚,使得稀疏矩阵不同列具有不同的收缩量,从而在主载荷向量上保留稀疏模式;采用块坐标下降法对自适应稀疏PCA公式进行两阶段优化,找到稀疏载荷矩阵和正交矩阵,提高特征选择的能力。仿真结果表明,相比SPCA算法和SSPCA算法,ASPCA算法的降维效果显著,且能提取更有价值的特征,有力的提高了分类模型的平均分类准确率。

1 稀疏主成分分析

X表示秩为qminn,pn×p数据矩阵,其中n为数据样本数,p为变量数。对于i=1,,nX的行表示为xirow,假定其以0为中心且covxirow=ΣΣp×p的正定矩阵,可以分解为

Σ=i=1qλiviviT (1)

式中:λi表示Σ的第i个最大特征值;vi=vi1,,vipTΣ关联的特征向量。PCA通过将原始变量替换为主成分Xvk,k=1,,qq个线性组合,从而将数据的维数从p减少到q,通过最大化其方差获得主载荷向量,即

vk=argmaxvvarXvs.t.  vkTvk=1; vkTvj=0,  j<k (2)

式中:vk为第k个主载荷向量;Xvk的投影为第k个主成分;var表示随机变量的方差。当使用qp的分量来解释数据的大部分差异,进而解释基础数据结构时,PCA最为理想。协方差矩阵Σ从数据上进行估计,载荷向量从估计矩阵Σ̂的特征值‑特征向量分解进行估计。

基于投影框架导出PCA的替代公式,其中主载荷矩阵(V定义为包含主要载荷向量的矩阵)通过最小二乘法估计

minVi=1nxirow-VVTxirow22s.t.VTV=Iq (3)

式中V=v1,,vqp×q主载荷矩阵。

使用X的奇异值分解(Singular value decomposition, SVD)计算PCA为

X=UDVT (4)

式中:ZUD的列是主成分;而V的列是相应的载荷向量。矩阵D是有序奇异值d1d2dq>0q×q对角矩阵,并且UV的列正交,因此UTU=VTV=Iq式(4)的SVD也提供了与X最接近的秩q矩阵近似,其中X和秩q近似矩阵X̂q的接近度用F‑范数的平方来表示,定义为

X-X̂qF2=trX-X̂qX-X̂qT (5)

这个秩q近似也对应于q个秩1近似,即

minu,bX-ubTF2 (6)

式中:b=d1v,向量uv分别为n×1p×1的矩阵,且u2=v2=1。本文用式(6)描述PCA的稀疏性。在b上添加L1‑范数作为稀疏正则约束获得稀疏载荷向量,表示为

b1=i=1pbi (7)

式中bib的分量。在式(7)中,稀疏惩罚对向量b的各个元素施加约束,这种约束b元素的方式导致了在不同成分之间稀疏模式变化的问题。但现有的稀疏PCA方法均不能保证在所有主载荷向量上都保持稀疏模式,也就是非零变量的位置在不同的主载荷向量上是不同的。

2 自适应稀疏主成分分析算法

2.1 自适应稀疏PCA公式

为了在所有主载荷向量上保留稀疏模式,本文采用组套索模型惩罚分组变

10‑12。通过在载荷向量上施加块稀疏约束并找到最小化的向量UBT的列向量,得出自适应稀疏PCA方法的公式为

minU,BX-UBTF2+i=1pαiqbi2s.t.UTU=Iq (8)

式中:bi为与q×p矩阵BT的第i列相对应的q×1向量,其中q用于相对于向量bi的维数来调整惩罚。式(8)的第1项对应于式(5)的F‑范数。式(8)中将BT的每一列视为1个组,bi2=0相当于将BT的第i列设置为零。因此,·2惩罚使得BT按列稀疏。式(8)利用了bi=0i=1pbi2的不可微性,将所有位于相同位置iq系数组设置为零,并在所有载荷向量上实现一致性稀疏。如果保留1个主成分,则列bi为一维,代价函数式(8)

minu,bX-ubTF2+i=1pαibis.t.u2=1 (9)

传统的稀疏PCA是式(8)描述的通用特例,但是如果需要一个以上的主成分来充分描述数据,则本文提出的自适应稀疏PCA方法具有保留相关载荷向量间稀疏模式的优点。式(8)使用L2,1‑范数进行双重正则化,先求矩阵BTi列向量biL2范数,再将结果求L1范数,同时实现收缩和选择,可以使一些大小为q的系数块恰好为0。代价函数式(8)通过对BT的不同列使用不同的调整参数αi获得自适应惩罚,从而保证BT的不同列出现不同程度的收缩。对于一组αi式(8)的优化在某种程度上是唯一的,以下命题讨论了式(8)解的唯一性。

命题1   对于给定的秩q矩阵X,代价函数式(8)的解对ÛB̂Tq×q正交矩阵Q上是唯一的。更准确地说,如果ÛB̂T式(8)的解,则ÛQQTB̂T也是一个解。

证明:假设Û1,B̂1式(8)的一个解。对于q×q正交矩阵Q,有Û1B̂1T=Û1QQTB̂1TQTb1i2=b1i2,其中b1iB1T的第i列。因此,Û2,B̂2=Û1Q,B̂1Q也是式(8)的解。

假设Û1,B̂1Û2,B̂2式(8)的两个解。假定Û1Û2为全列秩q,存在一个非奇异矩阵Q使得Û2=Û1QÛ2的正交性约束Û2TÛ2=QTÛ1TÛ1Q=QTQ表示Q是正交矩阵,则QQT=Iq;因为Û2QTB̂1T=Û1B̂1QTb1i2=b1i2,所以Û2,B̂1Q也是式(8)的一个解。最后,用Û2替换式(8)U,则B̂2B̂1Q都会使凸函数(具有唯一的全局解)最小化,因此B̂2=B̂1Q

命题1指出代价函数式(8)仅取决于Range(Û)(Û的列跨越的Rn的线性子空间),对任何基础选择都是不变的,在此基础上提出式(8)解的稀疏性模式的命题。

命题2   从代价函数式(8)获得的具有非零L2‑范数的BT列是唯一确定的。

证明:假设Û1B̂1TÛ2B̂2T式(8)的两个解。重新排列B̂1T的列顺序,使B̂1T=B̂1nT,0,其中B̂1nT不包含所有零项的列。根据命题1,存在一个正交矩阵Q,使得B̂2T=QTB̂1nT,0=QTB̂1nT,0。由于Q是正交的,所以QTB̂1nT的所有列都不完全为零。

2.2 调整参数计算

式(8)中,自适应调整参数为惩罚向量bi(i=1,,p)提供灵活的惩罚,保证不同的bi向量产生不同的收缩量。直观地说,必须对L2范数为零的向量采用较大的收缩量,而对于L2范数非零的向量应使用相对较小的收缩量。在实际中,对p个调整参数的选择进行贪婪搜索需要大量的计算。为了减少计算量,提高效率,设αi

αi=αb˜i2η (10)

式中b˜i是从X的第1个q右奇异向量乘以相关的第1个q奇异值且η=1得到的未惩罚解。

2.3 代价函数优化

代价函数式(8)是双凸结构,对于固定UB都是凸的,采用块坐标下降

13对其进行两阶段优化。第1阶段固定U求解B式(8)进行优化,第2阶段固定B求解U优化式(8)。优化到最后,B表示稀疏载荷矩阵,U将是一个完全正交的矩阵。

第1阶段对应于

minBX-UBTF2+i=1pαiqbi2 (11)

式(11)的第1项可以改写为

X-UBTF2=i=1pxi-Ubi22 (12)

式中xiX的第i列,其为n×1

关于bi的次梯度方程为

-2UTxi-Ubi+αiqsi=0i=1,,N (13)

式中: 如果bi20,则si=bibi2; 如果bi2=0,则si是满足si2<1的维度q的向量。

如果bi20式(13)可以直接求解bi, 即

-2UΤxi-Ubi+αiqbibi2=0 (14)

的解为

bi=1+αiq2bi2-1UTxi (15)

式(15)两边同时取L2范数进行求解

bi2=UTxi21+αiq2bi2=bi2UTxi2bi2+αiq2                                  
1=UTxi2bi2+αiq2bi2=UTxi2-αiq2 (16)

将此解代入式(15),得

bi=1-αiq2UTxi2UTxi (17)

bi2=0时,bi的次梯度方程变为

-2UTxi+αiqsi=0 (18)

si

si=2αiqUTxi (19)

因此,如果si2<1成立,则bi2=0。结合式(17)式(19)的结果得出式(9)的解为

bi=1-αiq2UTxi2+UTxi (20)

对应于向量软阈值规则,当2αiqUTxi2<1时,运算符·+设置为0。根据式(20),通过应用一组软阈值规则来获得BT的不同列,从而得到式(8)关于B的最小化值。

式(8)中优化的第2阶段定义为

minUX-UBTF2    s.t.  UTU=Iq (21)

这是一个正交的Procrustes问

14。解为U=U˜V˜TU˜V˜是从XB=U˜V˜T的SVD得到的,其中U˜n×qV˜p×q

2.4 算法描述

根据命题1和命题2对自适应稀疏PCA公式解的说明以及调整参数的计算公式,利用块坐标下降法两阶段优化的结果,ASPCA算法伪代码如算法1所示。

算法1   自适应稀疏PCA算法(ASPCA)

输入 数据矩阵X,稀疏主成分的数量q,调整参数α,阈值ε

输出 稀疏载荷矩阵B,正交矩阵U

(1) B作为第1个q右奇异向量乘以X的第1个q奇异值;

(2) 使用式(10)计算调整参数αij的向量;

(3) 使用式(20)更新BT及其每列的稀疏性;

(4) For j=1~p

(5) bi=1-αiq2Uj-1Txi2+Uj-1Txi;

(6) 使用XB=U˜V˜T的SVD更新Uj=U˜V˜T;

(7) 重复步骤(3~6),当Uj-Uj-1F<ε时,停止迭代,得到更新后的BTU

通过算法1可知,将数据矩阵、稀疏主成分的数量、调整参数以及阈值作为输入端,首先计算出调整参数,然后迭代计算得出矩阵BTU,最后得到稀疏载荷矩阵B。ASPCA算法使用块坐标下降法几次迭代后达到合理的收敛容限,因此该算法是稳定并保证收敛的。

2.5 算法复杂度分析

对于ASPCA算法,复杂性主要取决于迭代次数。对于非迭代部分,计算调整参数所需的SVD的计算复杂度为Onp2。更新U,SVD的计算复杂度为Oqn2,矩阵乘积计算复杂度为Onpq。因此,矩阵U的计算复杂度由SVD决定。更新BUTxi的计算复杂度为Onq,使用式(20)计算bi的计算复杂度为Onqp

3 仿真分析

3.1 数据集

与其他类似算法的仿真研究一致,本文将ASPCA算法应用到3种MNIST数据条件的数字分类任务中来评估算法降维的有效性。MNIST数据

15的3个不同背景条件为:(1)无背景;(2)背景中有均匀的随机噪声;(3)背景中随机出现无法识别的图像。本文使用大小为28像素×28像素、p=784n=1 000的灰度矢量化图像。图像被矢量化和叠加,形成n×p数据矩阵X,其中p为每个图像中变量(即像素)的数量。本文主要研究在主成分上保留稀疏模式的有效性,降维后执行标准的最近邻分类,只关注PCA降维的效果。使用n=1 000个训练样本计算主载荷矩阵,降维后这些样本用于训练分类器。

3.2 准确率分析

(1) 无背景时的准确率分析

图1所示,在无背景情况下,随着主成分数量的增加,SPCA算法、SSPCA算法和ASPCA算法的平均分类准确率均逐渐提高且相差不大。图中所示的准确率是测试数据的10个不相交子集的平均值。当主成分数量小于50个时,ASPCA算法和SPCA算法的平均分类准确率一致且高于SSPCA算法,因为没有关于稀疏模式结构的先验信息,SSPCA算法需要花时间确定正确模式。也就是当主成分数量小于50个时,ASPCA算法和SPCA算法的降维性能优于SSPCA算法。当主成分数量大于50个后,3种算法的平均分类准确率一致,达到了88%,即在无背景情况下,随着主成分数量的增加,SPCA算法、SSPCA算法和ASPCA算法降维效果逐渐接近且相差不大。

图1  无背景时准确率随主成分数量的变化

Fig.1  Variation of average classification accuracy with the number of principal components in no background

(2) 背景中有均匀随机噪声的准确率分析

图2所示,当背景中有均匀的随机噪声时,随着主成分数量的增加,ASPCA算法的平均分类准确率优于SPCA算法和SSPCA算法且稳定。在主载荷上引入稀疏度可以帮助选择原始空间中的重要特征,但当提取的主载荷数量增多时,SPCA算法需要分别处理主成分。因此随着主成分数量的增加,SSPCA算法和ASPCA算法的降维效果优于SPCA算法。当主成分数量大于等于90时,SSPCA算法和ASPCA算法的平均分类准确率逐渐相近,达到75.3%,降维性能接近一致。

图2  背景中有随机噪声时准确率随主成分数量的变化

Fig.2  Variation of average classification accuracy with the number of principal components in the background with random noise

(3) 背景中随机出现无法识别图像的准确率分析

图3所示,在背景中随机出现无法识别图像的情况下,随着主成分数量的增多,ASPCA算法、SPCA算法和SSPCA算法的平均分类准确率逐渐提高。因为ASPCA算法能够从数字数据的固有可变性中提取更多信息,从而不会受到背景噪声的干扰,能用更少的主成分实现更高的分类精度。对比SPCA算法和SSPCA算法,ASPCA算法的平均分类准确率较高,即在背景中随机出现无法识别图像的情况下,ASPCA算法的降维效果优于SPCA算法和SSPCA算法。

图3  背景中随机出现无法识别图像时准确率随主成分数量的变化

Fig.3  Variation of average classification accuracy with the number of principal components in the background appearing unrecognizable images randomly

可见,在对3种MNIST数据条件的数字进行分类的过程中,ASPCA算法的降维效果优于SPCA算法和SSPCA算法,尤其是在存在噪声情况下提取具有相同稀疏性模式的载荷向量是重要的。

4 结束语

为了解决主载荷稠密的问题,本文提出了一种ASPCA算法。通过在载荷向量上施加块稀疏约束得出ASPCA公式,对稀疏矩阵的不同列使用不同的调整参数获得自适应惩罚,使主载荷向量在所有主成分上都具有相同的稀疏性模式;然后,通过块坐标下降法进行优化找到最小化的稀疏载荷矩阵和正交矩阵,实现降维的最优化。仿真结果表明,ASPCA算法的降维性能更优,能提取更有价值的特征,从而有力地提高了分类模型的准确率。

参考文献

1

谢昆明, 罗幼喜. 一种改进的主成分分析特征抽取算法:YJ-MICPCA[J]. 武汉科技大学学报, 2019, 42(3): 220-226. [百度学术] 

XIE Kunming, LUO Youxi. An improved PCA algorithm for feature extraction: YJ-MICPCA[J]. Journal of Wuhan University of Science & Technology, 2019, 42(3): 220-226. [百度学术] 

2

JOLLIFFE I T, CADIMA J. Principal component analysis: A review and recent developments[J]. Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences, 2016, 374(2065): 1-16. [百度学术] 

3

VASWANI N, CHELLAPPA R. Principal components null space analysis for image and video classification[J]. IEEE Transactions on Image Processing, 2006, 15(7): 1816-1830. [百度学术] 

4

PYATYKH S, HESSER J, ZHENG L. Image noise level estimation by principal component analysis[J]. IEEE Transactions on Image Processing, 2013, 22(2): 687-699. [百度学术] 

5

刘作军, 高尚兵. 基于结构化低秩表示和低秩投影的人脸识别算法[J]. 计算机工程与科学, 2018, 40(1): 108-115. [百度学术] 

LIU Zuojun, GAO Shangbing. Face recognition based on structured low rank representation and low rank projection[J]. Computer Engineering & Science, 2018, 40(1): 108-115. [百度学术] 

6

MIN Feng, YE Xianyi, ZHANG Yanduo. Method of hand written digit recognition based on improved PCANet[J]. Huazhong University of Science & Technology (Natural Science Edition), 2018, 46(12): 101-105. [百度学术] 

7

HASTIE T, TIBSHIRANI R, WAINWRIGHT M. Statistical learning with sparsity: The LASSO and generalizations[M]. London: Chapman & Hall, 2015. [百度学术] 

8

ZOU H, HASTIE T, TIBSHIRANI R. Sparse principal component analysis[J].Journal of Computational and Graphical Statistics, 2006, 15(2): 265-286. [百度学术] 

9

Jenatton R,Audibert J Y, Bach F.Structured variable selection with sparsity-inducing norms[J].Journal of Machine Learning Research,2011,12: 2777-2824. [百度学术] 

10

RAO N, NOWAK R, COX C, et al. Classification with the sparse group LASSO[J]. IEEE Transactions on Signal Processing, 2016, 64(2): 448-463. [百度学术] 

11

CATALINA A, ALAÍZ C M, DORRONSORO J R. Accelerated block coordinate descent for sparse group lasso[C]//Proceedings of the 2018 International Joint Conference on Neural Networks (IJCNN). Rio de Janeiro, Brazil: IEEE, 2018. [百度学术] 

12

WANG H, LENG C. A note on adaptive group lasso[J]. Computational Statistics & Data Analysis, 2008, 52(12): 5277-5286. [百度学术] 

13

薛芳. 组Lasso模型及坐标下降算法研究[D]. 秦皇岛:燕山大学, 2015. [百度学术] 

XUE Fang. Study on group Lasso model and coordinate descent algorithm[D]. Qinhuangdao: Yanshan University, 2015. [百度学术] 

14

GOLUB G H, VAN LOAN C F. Matrix computations[M]. [S.l.]: Johns Hopkins University Press, 2012. [百度学术] 

15

LAROCHELLE H, ERHAN D, COURVILLE A, et al. An empirical evaluation of deep architectures on problems with many factors of variation[C]//Proceedings of the 24th International Conference on Machine Learning. [S.l.]: ACM, 2007: 473-480. [百度学术]