我尝试使功能重要性与我程序中当前运行的模型无关。我只获得了奇怪的百分比,而未总结为100%。有时%远远大于1000。有时总计约5%。在此之后,我尝试了解每种模型的功能重要性,但是在Scikit learning中只有少数模型具有此功能。 是否有人对如何独立获得功能重要性或针对KNN,SVC,朴素贝叶斯(Naive Bayes)等模型有建议?
这是我用来独立获取功能重要性的代码的片段:
selector = SelectKBest(chi2, k='all')
new_features = selector.fit_transform(X,y)
i = 0
featureImportance = []
for score in selector.scores_:
featureImportance.append((score, feature_name[i]))
i = i + 1
featureImportance = sorted(featureImportance, reverse=True)
for item in featureImportance:
print("{0} , {1:4.2f}%".format(item[1], item[0]))