第二章稀疏主成分分析
由第一章介绍的研究背景可知,对高维数据进行变量选择,是挖掘数据潜在价值的重要过程。在实际操作中遇到的数据,通常会尽可能多的包含与响应变量相关的特征变量,而这些特征变量之间往往会存在许多重复的信息,处理这样的数据时,如果我们把所有变量都选入模型,这无疑不是明智的选择,一方面那些高度相关的数据会导致信息冗余,另一方面也会大大增加计算难度。如果能消除变量之间的共线性,这对分析高维数据、挖掘其潜在价值而言,意义非凡。在n>p 且p 值不大的情况下,主成分分析在变量选择上表现良好,然而随着p 的增大,将面临许多问题,稀疏主成分分析可在一定程度上弥补主成分分析不足。本章主要研究稀疏主成分分析在高维数据上的表现,并结合实际数据进行分析。
2.1主成分分析简介
主成分分析是无监督学习中经典的降维技术,可用低维空间中的信息表示高维空间中的大多数信息,且低维空间中的指标之间相互独立,从而简化实际问题。其原理是通过对原始变量进行一定规则的线性组合,构成一组新的变量,使得这一组新的变量中每一个变量包含尽可能多的信息,同时变量之间相互独立,这一组新的变量就是提取出的主成分。而要使每一个主成分包含的信息尽可能多且相互独立,就是要让主成分的方差尽可能大,且相互正交。
假设样本阵
12(,,,),T n X X X X = 12(,,,),1,2,,,i i i ip X x x x i n == (),E X μ=().Var X ∑=对原始变量作如下变换:
1111122112211222221122(2.1)
p p p p p p p pp p p F a X a X a X a X F a X a X a X a X F a X a X a X a X =+++=⎧⎪=+++=⎪⎨⎪⎪=+++=⎩ 2..||||1,cov(,)0,,1,,,i i j s t a F F i j p i j
===≠ 统计学习中,常用方差来度量某变量所包含的信息,我们希望提取到的主成分尽可能多的包含原始变量的信息,也就是让主成分的方差尽可能大。由式(2-1)知,()(),T i i i i Var F Var a X a a ==∑而2||||1i a =,这个限制条件使得我们在以方差作为信息的度量标准时有一定的规范性,不至于所求得的主成分方差趋于无限大。而max()T i i a a ∑等价于求∑矩阵的最大特征值所对应的特征向量,因此,可以求出∑的p 个特征值12p λλλ>>> 以及与之对应的特征向量,方差最大的主成分称为“第一主成分”。比如,我们求得1λ所对应的特征向量1a 为第一主成分1F 的系数,它使得1F 在所有主成分中方差最大,也就是所包含的信息量最大,其中1a 为第1个主成分的系数,也称“载荷”。往往用一个主成分表示原始数据集中的信息是不够的,接下来求解第二主成分。在对数据处理的时候,我们希望尽量去除冗余信息,那么第二主成分就不应该包含第一主成分
中的信息,也就是主成分之间相互独立,即cov(,)0,i j F F i j =≠。选用第二大的特征值所对应的特征向量作为第二主成分的系数,由特征变量之间相互独立的性质可知,由此求得的第二主成分与第一主成分相
互独立。以此类推,可求出p 个主成分,这p 个主成分可以完全代表原始变量的信息,然而在实际数据的处理中,我们不需要使用样本数据中的全部信息就可以比较精确的对问题进行描述,所以在提取主成分时,也不需要将p 个主成分全部应用到模型中,以避免出现过拟合现象,可以根据实际问题确定主成分个数,从而达到有效降维的效果。通常,通过累积方差贡献率来决定主成分个数,这样可以在模型复杂度以及信息保留度之间达到一个相对平衡的效果。
2.2主成分分析存在的问题
由上一节对主成分分析的介绍可知,按上述方法所提取到的主成分,每一个都是原始变量的线性组合,当n>p 时,可以得到p 个载荷不为0的主成分,通常这些主成分所代表的实际意义比较模糊,我们无法根据载荷的正负及绝对值大小对主成分做出可靠的解释;当n<p 时,协方差矩阵非奇异,最多可以提取出n 个主成分,而对原始变量进行降维处理所带来的好处也许无法弥补由此导致的信息的遗失。因此,Huizou2004提出了稀疏主成分分析,主要参考了压缩惩罚思想对传统主成分分析进行修正。
2.3基于正则化的稀疏主成分分析
2.3.1正则化相关知识
弹性网是一种正则化方法,结合了岭回归和LASSO 的优点,既能压缩回归系数,也能对变量进行选择。
在预测模型中,我们对样本数据进行学习,将学习到的模型应用到新的数据上,进行预测估计。由于预测模型最终的目的是对新数据进行预测,而不是对已知数据进行拟合,所以,选择模型更加偏好于泛化能力较强的模型,而不是训练效果较好的模型。因此,我们并不需要将样本数据中的所有信息都提取到模型中,只需通过一系列规则将样本的共性筛查出来,从而达到较好的预测效果。如果一个模型对训练数据拟合能力非常好,而对未知数据预测误差较大,则称该模型出现了过拟合现象。对高维数据降维所训练出来的模型需要同时满足较强的泛化能力以及较高的预测精度两个特点,泛化能力较强的模型的精确度通常不是最高的,而预测精度高的模型往往过于复杂,出现过拟合现象。所以,这样就需要在模型的复杂程度和模型的精确度之间达到一个平衡。附复杂度和精确度图。
出现过拟合现象往往是因为将训练数据的特性也当做共性,考虑在模型之内了,此时模型参数比真实模型参数多,训练误差较小,预测误差较大;而泛化能力较强的模型一般则需要尽可能全面的考虑到数据的共性,因此,合理的降维,需要在这两个要求之间达到平衡,即剔除掉一部分不重要的特征,且保留大多数重要特征。至此,我们可以考虑正则化来实现这一目标。最小化结构风险也就是正则化的实现,通常是在经验风险上加上一个表示模型复杂度的惩罚项组成,以此,避开模型的过拟合现象,达到更好的预测效果。
以线性回归为例,样本阵12(,),(,,,)T n A X y y y y y == ,考虑线性回归模型:
(2.2)
y X βε=+12..()0,(),(,,,)T
p s t E Var I εεββββ=== 要使回归模型达到一定的预测精度,同时有较低的复杂度,可在最小化经验风险的基础上加一个惩罚项,由该惩罚项控制模型的复杂度,不失一般性,我们让正则化值大的惩罚项代表复杂度高的模型,让正则化值小的惩罚项代表复杂度低的模型,所以,要得到一个复杂度低且预测精度高的模型,可以转化为求解以下问题:
2min||||()(2.3)
y X J βλβ-+2.3式第一项即经验误差平方,第二项为惩罚项,一般为系数的函数。对于不加惩罚项的模型,若以最小化经验风险为目标函数,即
2min||||(2.4)
y X β-可求得系数的最小二乘估计为:
1()(2.5)
ols T T X X X y β-=由解的形式可知,若T X X 不是列满秩的,或n<p 时,最多可求得n 个非零系数,这就使得由于算法计算的原因,剔除了部分变量,而这部分变量中有可能包含对响应变量产生重大影响的变量。为解决这一问题,vv 提出的岭回归可以有效解决这一问题。
岭回归可以定义为以下目标函数:
正则化最小二乘问题22arg min||||||||(2.6)
y X ββ
βλβ=-+其中,罚函数称为L2罚,0,λ>求解岭回归的过程如下:
22arg min||||||||arg min()()arg min ()(2.7)
T T T T T T T T y X y X y X y y y X X y X X I β
β
ββ
βλβββλββ
βββλβ
=-+=--+=--++对2.7式求导,可得到岭回归的解为:
1()(2.8)
ridge T T X X I X y βλ-=+由岭回归解的形式可看出,岭回归系数为响应变量的线性函数,且相比较于最小二乘估计而言,岭回归估计在其对角线上加上一个正常数,即使T X X 不是列满秩的,抑或n<p,岭回归估计仍可求出与特征变量个数一样的非零系数,这保证了求解出来的模型不遗漏任何重要变量,这也带来了另一个问题——过
拟合。在研究某个问题时,研究人员总会尽可能多的收集与响应变量有关的特征变量,而在对训练数据进行学习之前,没有公认的标准去衡量哪些特征变量会对响应变量产生重要影响,但是将所有特征变量选入模型,这明显是不合适的。一方面,这会使模型变得很复杂,出现过拟合现象,另一方面,当p 很大时,计算量也会加大很多。为解决这一问题,VV 提出了LASSO,即对经验误差项加上L1罚。
LASSO 回归可定义为以下问题:
21arg min||||||||(2.9)
y X βββλβ=-+假设有以下优化问题: 211arg min ||||||(2.10)
2z P λθθθθ=-+其解的形式为(参见A&fan2001):
0'00,||(2.11)
sgn()(||),||z P z z P z P λθθ≤⎧⎪=⎨->⎪⎩其中:
'00min(())
P P λθθθ≥=+若样本阵X 为正交矩阵,则公式2.9可转化为以下最小化问题:
21arg min||||||||(2.12)
T X y βββλβ=-+同时,该式最小二乘的解也转化为:
(2.13)
ols T X y β=则,2.9式的解可表示为:
sgn()(||)(2.14)
lasso ols ols βββγ+=-其中A +表示A 的正数部分,若A 为负数,结果为0.
从LASSO 解的形式可以看出,部分系数绝对值小于γ的特征变量的系数将被转变为0,在线性模型中的直观解释就是,对响应变量影响较小的变量将被剔除。LASSO 虽然解决了岭回归没有变量选择功能的问题,但却无法处理n<p 的问题,弹性网回归结合了岭回归和LASSO 的优势,既能选出足够多的变量,
又能将部分不重要的变量系数压缩至0.弹性网回归可以定义为以下目标函数:
22121arg min||||||||||||(2.15)
y X βββλβλβ=-++
其求解过程如下:
令212/()(0,1)αλλλ=+∈,则公式2.15等价于:
221arg min||||||||(1)||||(2.15)
y X βββαβαβ=-++-可在原数据集上构造一个新的数据集**(,)X y ,其中
1**2
2
(1),0p p p X y X y λ-⨯⎛⎫⎛⎫=+=⎪ ⎪⎪⎝⎭⎭
令*1/,ηλβ==则弹性网回归可以等价于求解以下问题:
*****2*1arg min||||||||(2.16)
y X βββηβ=-+公式2.16可看成是一般的LASSO 回归,类似的可得到系数的弹性网估计:
12sgn()(||/2)/(1)(2.17)
en ols ols βββλλ+=-+由弹性网的表达形式以及新数据集的构造可看出,弹性网结合了岭回归和
LASSO 回归的优势,对于T X X 不是列满秩以及n<p 的情况,岭回归的L2罚使
得弹性网可以筛选出足够多的非零系数,将所有变量选入模型,从而不至于因为算法或者样本阵特征的因素,而误删某些重要变量;LASSO 的L1罚可对系数进一步加上一个限制,从而剔除影响较小变量,达到了真正意义上的在模型复杂度和模型精度的平衡。
2.3.2基于弹性网的稀疏主成分分析
正如2.2节中提到的,主成分有着和无惩罚线性模型一样的不足,那么我们可以仿照对无惩罚线性模型的改进,对主成分也加上一个惩罚函数,使得在提取主成分的时候,不受样本量的限制,同时也达到稀疏的效果。
由2.1介绍的主成分提取方法可知,提取主成分可以归结为求解以下优化问题:
max()(2.18)
T T i i a X Xa ..1,0,.
T T i i i k s t a a a a i k ==≠由第一节介绍的主成分计算结果可知,第i 主成分可表示为i Xa .同时,按主成分的计算过程可知,若将样本阵进行奇异值分解:X UDV =,第i 主成分可表示为i ii u D .而主成分分析中,我们要使任意两个主成分之间相互独立的同时,每一个主成分所能代表的样本信息量最大,也就是
2min()(2.19)i Xa X β-
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论