特征选择是实用机器学习的重要一步,一般数据集都带有太多的特征用于模型构建,如何找出有用特征是值得关注的内容。
1. Feature selection: All-relevant selection with the Boruta package
特征选择两种方法用于分析:(1)最少最优特征选择(minimal-optimal feature selection)识别少量特征集合(理想状况最少)给出尽可能优的分类结果;(2)所有相关特征选择(all-relevant feature selection)识别所有与分类有关的所有特征。
本文使用Boruta包,它使用随机森林分类算法,测量每个特征的重要行(z score)。
2. 使用caret包
使用递归特征消除法,rfe参数
x,预测变量的矩阵或数据框
y,输出结果向量(数值型或因子型)
sizes,用于测试的特定子集大小的整型向量
rfeControl,用于指定预测模型和方法的一系列选项
一些列函数可以用于rfeControl$functions,包括:线性回归(lmFuncs),随机森林(rfFuncs),朴素贝叶斯(nbFuncs),bagged trees(treebagFuncs)和可以用于caret的train函数的函数(caretFuncs)。
1)移除冗余特征
移除高度关联的特征。
Caret R包提供findCorrelation函数,分析特征的关联矩阵