Feature selection特征选择, 2022-06-22

(2022.06.22 Wed)
特征的选择对于机器学习的预测结果来说至关重要,特征和数据决定了预测结果的上限,而算法只是无限逼近这个上线。

这里所说的特征选择针对有监督的机器学习算法。

特征选择分为三类filter methods、wrapper methods、embedded method。

Filters method过滤方法

在过滤方法中,特征如果与输出相关性低则被抛弃。使用相关性correlation来判断特征与输出标签label是正相关或者负相关,来决定是否保留或使用该特征。比如information gain,卡方检验Chi-square test,Fisher's score,Pearson相关系数等。

这类方法通常应用于数据预处理阶段,特征选择来自与算法无关的数据集。这类算法在效率上比较快速和廉价,可以相对容易移除重复、相关、冗余特征。但这种方法无法消除多重共线性(multi-collinearity)。

Selection of feature is evaluated individually which can sometimes help when features are in isolation (don’t have a dependency on other features) but will lag when a combination of features can lead to increase in the overall performance of the model.

Wrapper method

包裹方法类似于贪婪算法,用特征的子集训练模型,并迭代(iterative manner)地增加或减少特征,找出最优特征组合。查找最优特征子集的停止准则由训练模型的人来预先定义,诸如模型的性能开始下降,或者特征达到特定数目。包裹法相比filter method的优势在于该法提供了训练模型的最优特征集合,所以在模型准确度上表现更出色,但是要花费更高的计算成本。

搜索过程可以被方法化,比如best-first搜索,可以随机化,比如随机爬山算法(random hill-climbing algorithm),或者基于启发性方法,比如前向选择(forward selection),后向剔除(backwards elimination)。

嵌入方法Embedded methods

嵌入方法将特征选择作为学习算法的一部分,嵌入方法弥补了filter和wrapper法的不足并融合了他们的优点。嵌入法比filter更快更准确,也考虑特征集合。

最常见的嵌入方法是正则化(Regularization),该法将惩罚参数加入到模型中以避免模型过拟合。这种特征选择法使用Lasso(L1正则)和Elastic nets(L1和L2正则)。惩罚项应用于系数,会将一些系数降为0。如果特征的系数为零,则不被作为模型的特征。

此外还有基于树的方法,比如随机森林和Gradient boosting,将特征重要度(feature importance)作为选择特征的方式。特征重要度告诉我们哪些特征对结果更为重要。

你可能感兴趣的:(Feature selection特征选择, 2022-06-22)