带交叉验证的递归特征消除 (RFEVC) 不适用于多层感知器估计器(以及其他几个分类器)。
我希望在许多分类器中使用特征选择,执行交叉验证来验证其特征选择。有什么建议么?
对于结构化数据,有一个独立于模型选择的特征选择,称为排列重要性。解释得很好here和其他地方。
你应该看看它。这是目前正在sklearn中实现.
目前没有 MLP 的实现,但可以使用如下的方法轻松完成(来自文章):
def permutation_importances(rf, X_train, y_train, metric):
baseline = metric(rf, X_train, y_train)
imp = []
for col in X_train.columns:
save = X_train[col].copy()
X_train[col] = np.random.permutation(X_train[col])
m = metric(rf, X_train, y_train)
X_train[col] = save
imp.append(baseline - m)
return np.array(imp)
请注意,此处训练集用于计算特征重要性,但您可以选择使用测试集,如所讨论的here.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)