特征选择(2):通过计算统计分数进行特征选择-FeaLect

摘要

FeaLect是一种通过对特征进行统计评分的特征选择方法。从输入数据中抽取几个随机子集,并对每个随机子集用LARS方法拟合各种线性模型。对于每个特征,基于将该特征包括在模型中的套索倾向来计算分数。

1 简介

要构建一个稳健的分类器,通常需要训练实例的数量大于特征的数量。在诸如生物信息学、自然语言处理和计算机视觉等许多现实生活应用中,学习算法可能会在没有任何关于应该使用哪些特征的先验知识的情况下被提供许多特征。因此,特征的数量可能大大超过训练实例的数量。在这种学习情况下,为了防止过拟合和改善预报器的泛化误差界,已经发展了许多正则化方法。最值得注意的是,Lasso是一种线性回归的L1-正则化技术,在机器学习和统计学中引起了极大的关注。虽然存在有效的算法来恢复套索的整个正则化路径[3],但是找到高度相关的特征子集来产生稳健的预测器是一个重要的研究问题。

L1-正则化的一个众所周知的理由是,它导致稀疏解,即那些具有许多零的稀疏解,并因此执行模型选择。最近的研究已经研究了LASSO的模型一致性(即,如果我们知道底层数据生成过程的真实稀疏模式,当训练实例的数量增加时,LASSO是否恢复这种稀疏模式?)。文献[1,2,7]中的分析表明,对于正则化参数的各种衰减方案,Lasso在训练样本数趋于无穷大时,以概率1选择相关特征,以正概率选择不相关特征。如果基础数据分布中有几个样本可用,则只需对每个样本的所选特征集感兴趣,就可以删除不相关的特征。[2]中的想法是通过使用Bootstrap方法[4]从给定的训练数据集中用替换重新采样来提供这样的数据集。

FeaLect[6]提出了另一种基于套索的特征选择算法,用于构建稳健的预测器。其假设是,定义衡量每个特征“质量”的评分方案可以提供更稳健的特征选择。FeaLect方法是从训练数据中生成若干个样本,为每个样本确定特征的最佳相关性排序,最后将这些相关性排序组合起来选择相关性较高的特征。

2 如何使用FeaLect?

FeaLect是一个R包源,可以从全面R档案网(CRAN)下载。这个包的主要函数是FeaLect(),它是使用R中的命令库(FeaLect)加载的。

2.1 示例

此示例显示如何运行FeaLect为特征分配分数。这里,F是特征矩阵;每列是一个特征,每行代表一个样本。L是包含正样本和负样本的1和0的标签向量。我们假设L是按照F的行来排序的。

<code>library(FeaLect)
data(mcl_sll)
F L names(L) message(dim(F)[1], " samples and ",dim(F)[2], " features.")
FeaLect.result total.num.of.models=100, talk=TRUE)/<code>
特征选择(2):通过计算统计分数进行特征选择-FeaLect

分数在输出的log.score元素中返回:

<code>plot(FeaLect.result$log.scores, pch=19)/<code>

除了分数之外,FeaLect()函数还计算其他一些值。例如,Bolasso方法选择的特征也作为双积返回,而不增加计算成本。此外,该软件包还包括一些其他功能。输入结构和输出值在包装手册中有详细说明。

参考文献

[1] F. Bach. Model-consistent sparse estimation through the bootstrap. Technical report, HAL-00354771, 2009.

[2] Francis R. Bach. Bolasso: model consistent lasso estimation through the bootstrap. In ICML ’08: Proceedings of the 25th international conference on Machine learning, 2008.

[3] Bradley Efron, Trevor Hastie, Lain Johnstone, and Robert Tibshirani. Least angle regression. Annals of Statistics, 32:407–499, 2004.

[4] Bradley Efron and R. J. Tibshirani. An Introduction to the Bootstrap (Chapman & Hall/CRC Monographs on Statistics & Applied Probability). Chapman and Hall/CRC, 1998.

[5] Martin J. Wainwright. Sharp thresholds for high-dimensional and noisy sparsity recovery using l1-constrained quadratic programming (lasso). IEEE Trans. Inf. Theor., 55(5), 2009.

[6] Habil Zare, Gholamreza Haffari, Arvind Gupta, and Ryan Brinkman. Statistical analysis of overfitting features. In preparation.

[7] Peng Zhao and Bin Yu. On model selection consistency of lasso. J. Mach. Learn. Res., 7:2541–2563, 2006.


分享到:


相關文章: