回归压缩以及通过Lasso选择变量
由ROBERT TIBSHIRANIT著 加拿大 多伦多大学
1994年1月接收 1995年1月修订
摘要
我们提出了一个估计线性模型的新方法。Lasso最小化残差平方和使得系数绝对值之和小于一个常数。由于这种约束的性质,它倾向于产生一些恰好为0的系数,从而给出了解释模型。我们的模拟研究表明,Lasso具有一些子集选择和岭回归的良好特性。它产生像子集选择一样的可以解释的模型并且展示了岭回归的稳定性。Lasso与Donoho和Johnstone近期提出的关于自适函数估计的工作有着有趣的联系。Lasso想法是相当广泛的,并且可以运用在各种统计模型中:本文简要介绍了广义的回归模型和基于树的模型的扩展。
关键词:二次规划;回归;压缩;子集选择
1.引言
考虑一般的回归情况:我们有数据(xi,yi),i?1,2,...,N,xi?(xi1,...,xip)T和yi分别是第i组观测的自变量和因变量值。普通最小二乘估计(OLS)是通过残差平方和最小化得到的。有两个原因来解释为什么数据分析常常不适合用OLS估计。第一个原因是预测精度:OLS估计通常偏压较小,方差较大;预测精度有时可以通过压缩或将一些系数设置为0而提高。通过这样做,我们牺牲一点偏压以减少所预测值的方差,并且可以提高整体的预测精度。第二个原因是模型的解释。对于大批预测值,我们更愿意判断模型在一个更小的子集当中显示出来的最好的结果。
两个可以改善OLS估计的基本方法,子集选择法和岭回归都有缺陷。子集选择法提供了可解释的模型,但是由于它是一个从模型中保留或删除的离散过程变量,它可能极其易变。数据的微小变动会影响由子集选择法得出不同模型,这可以降低其预测精度。岭回归是一个系数收缩的连续的过程,并且因此更加稳定:然而,它的任何系数都不为0,因此不能给出容易解释的模型。
我们提出一个新方法,叫作Lasso,意思是最小绝对收缩和选择算法。它缩小了一些系数,并将其他的系数设置为0,从而试图保留子集选择法和岭回归的优良特性。
在第2节我们给出了Lasso的定义,并且寻找一些特例。在第3节中给出一个真实的数据例子,在第4节我们研究了预测误差与Lasso收缩参数估计的方法。在第5节简单提及Lasso中的一个贝叶斯方法。我们在第6节描述了Lasso算法。第7节是模拟研究和介绍。第8节和第9节研究了广义回归模型的拓展和其他问题。第10节讨论了Lasso软阈值的一些结论以及关系,第11节包括讨论与总结。
2. LASSO方法 2.1 定义
假设数据(xi,yi),i?1,2,...,N,其中xi?(xi1,...,xip)T为自变量,yi是因变量,在通常的回归建立中,我们假定要么观测值是独立的,或者对于给定的xij,所有的yi是条件独立的。我们假定xij标准化,且?ixij/N?0,?ix2ij/N?1。
令??(?1,...,?p),用Lasso方法的估计量(?,?)定义为
^^N^^^T^^(?,?)?argmin{?(yi?????jxij)2} 对于?|?j|?t (1)
i?1jj这里t?0是一个调和参数。此时对所有的t,有?的估计是??y。我们可以在不失一般性的情况下假定y?0,因此可忽略?。
方程(1)的解决方案的计算是具有线性不等式约束的二次规划问题。我们
将在第6节针对这个问题介绍一些高效稳定的算法。
参数t?0控制的是应用于估计的收缩量。令?oj为完全最小二乘估计且令
^?^?t0??|?oj|。t?t0会导致模型的收缩量趋向0,且一些系数可能刚好等于0。举个例子,如果t?t0/2,效果会大致类似于寻找大小为p/2的最优子集。还需要注意的是设计矩阵不一定是满秩。在第4节我们给出估计t的一些基于数据的方法。
Lasso的想法来源于Breiman(1993)的一个令人刚兴趣的建议。Breiman的非负铰除法目标函数最小化形式为
N^2^?(y????cii?1jj?ojxij) 使得cj?0,?cj?t (2)
非负铰除法始于普通最小二乘估计,而且压缩其系数使其非负系数的和小于
一个常数。在大量的模拟实验中,相对子集选择法,Breiman的非负铰除法预测误差相对较小,而且当真实模型具有较多非零系数时,在预测方面,非负铰除法和岭回归法的预测效果不相上下。
非负铰除法的缺点是其运算结果依赖于最小二乘估计的符号和数值大小。并且在存在过度拟合和变量存在高度相关情况时,由于最小二乘估计效果不好而会影响预测准确性。相比之下,Lasso则避免了非负绞除法的缺陷。
Frank和Friedman提出给标准的系数Lq一个约束条件,这里q是一个大于等于0的数;Lasso方法中q?1。我们将在第十节对此进行简略的讨论。