一些变量筛选方法——1、综述

写在最前

由于《An Introduction to Statistical Learning with R》课程论文需要我们进行对一些变量筛选方法与降维的方法进行综述,所以这里将分几个部分,将学到的一些变量筛选方法写在博客之中。写成一篇长博客看得比较吃力,写的也比较慢,所以这里慢慢一部分一部分的来写。


综述

高维统计问题来自科学研究和技术发展的多个领域,在科学与人文等不同领域中变得越来越重要,从基因组学,生物医学再到经济学,金融学等。它体现在统计学中的许多当代问题中(Hastie,Tibshirani和Friedman)。例如,在使用基因微阵列(Microarray)或蛋白质组学数据(Proteomics Data)中,数以千计的基因数据以及分子或离子的表达作为自变量,而在当考虑交互时,维度则会更为迅速的增长,导致更高的维度。此外,高维数据还包括高分辨率图像数据,语音数据,文本数据,金融数据,纵向数据等等。 Donoho 说明了高维数据分析的发展需要,并提出“维度诅咒”。 Fan和Li 在如今对高维度的统计挑战进行了全面的综述。

针对一个统计方法,统计准确性、模型可解释性和计算复杂性是衡量其好坏的三个重要指标。在传统的研究中,观测值的数量远大于变量或参数的数量。在这种情况下,三个方面都不需要牺牲别人的效率。然而,当维度 p 与样本大小 n 相当或更大时,传统方法面临重大挑战。因此,如何设计更有效推断的统计程序,如何使估计的模型可以解释,以及如何使统计程序在计算上高效和稳健成为了非常重要的研究问题(Fan和Lv)。

高维数据分析需要新的统计方法和理论,变量筛选是高维数据分析的基础。其主要是通过统计方法从繁多的变量中选出对响应变量最大的解释变量,它是统计分析和推断的重要环节。变量筛选的结果好坏直接影响模型的质量,进而对统计分析与预测精度产生极大的影响。

变量筛选方法自上世纪60年代提出以来就一直是统计学研究的热点课题之一。课本中所提及的变量筛选方法都是一些较为传统与流行方法,其分别是:子集选择法(Subset Selection)系数压缩法(Shrinkage)降维法(Dimension Reduction)子集选择法分为最优子集选择逐步筛选法等,这部分方法依赖于下述模型评判指标:

  • Mallows 提出运用Cp去评估一个以普通最小二乘法(Ordinary Least Square或OLS)为假设的线性回归模型的优良性,从而用于模型选择。
  • 日本学者 Akaike 在1974年基于极大似然方法提出了AIC准则,它建立在熵的概念基础上,可以权衡所估计模型的复杂度和此模型拟合数据的优良性。
  • Schwarz 在Bayes方法的基础上提出BIC准则。与AIC相比,BIC加强了惩罚力度,考虑了样本量,从而在选择变量进入模型上更加谨慎。
  • Seymour Geisser 提出了交叉验证法(Cross validation),利用交叉验证结合最小平方误差的方法,是一种在没有任何前提假定的情况下直接进行参数估计的变量选择方法。

压缩系数法包括岭回归LASSO等。这两种方法可以用于自变量相关性非常强时,在进行线性回归进行参数估计时,会导致解不可逆,并且十分不稳定。岭回归由于使用L2范数作为限制,所以只能将估计的参数进行压缩,使得模型更加稳定,但不能对变量进行筛选。而LASSO由于使用了L1范数为限制条件,可以使得 p 维的回归参数变为稀疏的,也就是使许多分量为零,其中非零分量表示重要变量。

书上提到的其它降维法则包括了主成分回归以及偏最小二乘回归主成分回归法主要是先对自变量进行主成分分析,然后挑选变化后的,较为重要的一些新变量进行回归。这部分新变量的构造不依赖于因变量,相当于无监督学习。而偏最小二乘回归相当于在主成分回归的基础上再进行适当的添加,新变量的构造不仅依赖于原本的自变量,还受因变量的影响。

变量筛选的稀疏性原理假定只有少数预测因子对响应做出贡献,这一原则在高维数据分析中经常被采用并被认为是有用的。遵循这个一般原则,已经发展了大量的通过惩罚最小平方或可能性的变量选择方法来估计稀疏模型并同时选择显着变量。上述这几种方法是书上提到的一些方法,但在如今大数据的环境下,在不同的实际应用中,我们很难保证某种方法是绝对最好的。各种各样新的变量筛选方法如雨后春笋般涌现:如利用随机森林进行变量筛选方法,Fan和Li 结合L0与L1范数提出的SCAD (Smoothly Clipped Absolute Deviation)等。尤其是近几年,基因组学等领域的现代应用将数据的维度推向更大规模,数据维度可能随着样本规模呈指数增长。针对这种超高维数据,近几年的文献中又出现了许多方法,例如:Fan 提出的SIS(Sure Independence Screening)。该方法几乎可以确保那些对因变量有显著影响的自变量能够被挑选出来;与此同时筛选的过程是独立的,即单独衡量每个自变量与因变量之间的相关性。

我们综合了课本上的几种变量筛选的方法,与时下比较流行的变量筛选算法。对这些算法模型进行详细地叙述,并将部分算法进行比较。后面本文会通过R软件编程,使用几组模拟实验实现并比较了若干变量选择方法。最后使用一个实际案例在说明不用变量筛选方法在实际数据中的表现。

猜你喜欢

转载自blog.csdn.net/weixin_41929524/article/details/80275778