首页 > 解决方案 > sklearn随机森林查找所选特征的分数

问题描述

我试图了解每个选定功能获得的相关分数。

到目前为止,我已经尝试过:

 classifier = 
 SelectFromModel(RandomForestClassifier(n_estimators = 100))
 m = classifier.fit(train.drop(columns='indicator'), train.rg_risk)
 X_train = train.drop(columns='indicator')
selected_feat=X_train.columns[(classifier.get_support())]
len(selected_feat)

标签: pythonmachine-learningscikit-learnfeature-selection

解决方案


SelectFromModel 是一种嵌入式方法:它使用具有内置特征选择方法的算法。

在您的情况下,您使用 RandomForest 根据特征重要性选择特征。它使用每个决策树中的节点杂质来计算特征重要性。

通过threshold=None,最终的特征重要性阈值默认计算为所有决策树特征重要性的平均值。其他可能性是中位数(与均值相同,但使用中位数)或用于调整中位数/均值 ( "1.25*mean", "1.25*median") 的比例因子。

源sklearn


推荐阅读