了解交叉验证的递归特征消除

机器算法验证 机器学习 特征选择 优化
2022-02-28 13:46:45

我想了解递归特征消除(RFE)与交叉验证(CV)相结合的算法。Guyon 等人的原始资料。关于 RFE 可以在这里找到。

  • 我对 RFE 的理解:我们首先训练我们的分类器——比如一个线性支持向量机——所有的特征。这给了我们每个特征的权重。这些权重的绝对值反映了每个特征的重要性。我们删除最不重要的特征,再次进行训练,获得新的排名并继续,直到我们对所有特征进行排名

  • 我的问题:我正在运行 RFE 交叉验证(在具有此实现的 python 中)。在下面的示例中,有几个特征排名第一。这是怎么回事?对于最终排名,我假设 RFE 消除必须重复进行,那么这是否意味着 RFE 的多次应用,每次另一个功能都排名第一?这如何与交叉验证相结合,当每个子集可能包含不同的特征时,如何计算(见下图)来自 1,2,3,..features 的分类精度?

在此处输入图像描述

1个回答

假设您运行 3 倍 RFECV。对于每次拆分,训练集将被 RFE 转换 n 次(对于每个可能的 1..n 个特征)。提供的分类器将在训练集上进行训练,并在测试集上计算分数。最终,对于每 1..n 个特征,3 个不同拆分的平均结果会显示在您包含的图表上。然后,RFEVC 使用得分最高的特征数对整个集合进行转换。您看到的排名是基于最终的转换。