Lasso算法

科技工作者之家 2020-11-17

LASSO是由1996年Robert Tibshirani首次提出,全称Least absolute shrinkage and selection operator。该方法是一种压缩估计。它通过构造一个惩罚函数得到一个较为精炼的模型,使得它压缩一些系数,同时设定一些系数为零。因此保留了子集收缩的优点,是一种处理具有复共线性数据的有偏估计。

LASSO 的基本思想LASSO 的基本思想是在回归系数的绝对值之和小于一个常数的约束条件下,使残差平方和最小化,从而能够产生某些严格等于 0 的回归系数,得到可以解释的模型,其数学表达式如下:

其中 t > 0,是调整参数,通过控制调整参数 t 可以实现对总体回归系数的压缩。t 值的确定可以利用Efron
和 Tibshirani ( 1993 )提出的交叉验证法来估计。这个数学表达式还等价于最小化下述惩罚最小二乘法:

其中 a 与 t 一一对应,可以互相转换。LASSO 方法的主要优势在于其对参数估计较大的变量压缩较小,而参数估计较小的变量压缩成 0,并且 LASSO 分析的参数估计具有连续性,适用于高维数据的模型选择.Tibshirani 在2005 年提出了 Fused LASSO 方法,这个估计方法满足了模型系数以及系数差分的稀疏性,使得邻近系数间更加平滑。

lasso回归lasso回归的特色就是在建立广义线型模型的时候,这里广义线型模型包含一维连续因变量、多维连续因变量、非负次数因变量、二元离散因变量、多元离散因变,除此之外,无论因变量是连续的还是离散的,lasso都能处理,总的来说,lasso对于数据的要求是极其低的,所以应用程度较广;除此之外,lasso还能够对变量进行筛选和对模型的复杂程度进行降低。这里的变量筛选是指不把所有的变量都放入模型中进行拟合,而是有选择的把变量放入模型从而得到更好的性能参数。 复杂度调整是指通过一系列参数控制模型的复杂度,从而避免过度拟合(Overfitting)。 对于线性模型来说,复杂度与模型的变量数有直接关系,变量数越多,模型复杂度就越高。 更多的变量在拟合时往往可以给出一个看似更好的模型,但是同时也面临过度拟合的危险1。

lasso的复杂程度由λ来控制,λ越大对变量较多的线性模型的惩罚力度就越大,从而最终获得一个变量较少的模型。除此之外,另一个参数α来控制应对高相关性(highly correlated)数据时模型的性状。 LASSO回归α=1,Ridge回归α=0,这就对应了惩罚函数的形式和目的。我们可以通过尝试若干次不同值下的λ,来选取最优λ下的参数,还可以结合CV选择最优秀的模型。

LASSO 分析中出现的问题在 LASSO 分析中,可能会出现过度压缩非零系数的情况2,增大了估计结果的偏差,使估计结果不具有相合性。为了提高 LASSO 方法的相合性和准确性,Zou H( 2006 )提出了自适应的 LASSO 方法,其把LASSO 中的惩罚项修正为:

其中 βj是最小二乘估计系数。自适应 LASSO 分析的重要意义在于当样本量趋于无穷且变量个数维持不变时,其估计结果具有相合性,并且这些参数估计的结果与事先给定的非零变量位置的最小二乘得到的参数估计的分布渐进相同。直接将自适应 LASSO 的想法应用到水平压缩方差分析中,其数学表达式如下:

LASSO 的优点LASSO算法在模型系数绝对值之和小于某常数的条件下,谋求残差平方和最小,在变量选取方面的效果优于逐步回归、主成分回归、岭回归、偏最小二乘等,能较好的克服传统方法在模型选取上的不足3。

通过查阅文献,发现基于 LASSO 算法的变量选取方法可以很好地解决上述问题。

本词条内容贡献者为:

王慧维 - 副研究员 - 西南大学

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。