使用集合投票分类法寻找前3个特征重要性

2024-06-16 09:11:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个分类问题,我必须找到前3个特征 采用PCA,xgboost,随机森林的投票分类器方法, 逻辑规则和决策树。在

我是一个初学者,我不知道如何使用投票分类器来获得特性重要性。在

from sklearn.linear_model import LogisticRegression  
from sklearn.ensemble import RandomForestClassifier  
from sklearn.ensemble import GradientBoostingClassifier  
from sklearn.decomposition import PCA  
from sklearn.ensemble import VotingClassifier   

log_clf = LogisticRegression(random_state=2)

rnd_clf = RandomForestClassifier
(n_estimators=150, max_depth=3, min_samples_leaf=6, 
max_features=0.3, n_jobs=-1, random_state=2)

gbm_clf= GradientBoostingClassifier 
(n_estimators=150, max_depth=3, min_samples_leaf=3, max_features=0.3, 
learning_rate=0.05, subsample=0.4,random_state=2)`

estimators = [('lr', log_clf), ('rf', rnd_clf), ('gbm', gbm_clf)]

voting_clf = VotingClassifier(estimators=estimators,voting='hard')

voting_clf.fit(train.drop(['target'],1),train['target'])

例外:使用pca、xgboost、dt、rf和lr的投票分类器,应给出变量的特征重要性。在


Tags: fromimport分类器random特征sklearn投票max
1条回答
网友
1楼 · 发布于 2024-06-16 09:11:38

您可以从voting_clf对象访问底层分类器,并提取这些分类器的功能重要性。 例如:

for alg in voting_clf.named_estimators:
    clf = voting_clf.named_estimators[alg]
    # extract feature importance for clf
    # Note different algorithms have different 
    # methods for feature importance

既然你用根本不同的“特征重要性”概念来组合算法,我认为没有一种定义明确的方法来决定哪些特征在组合结果中最重要。在

相关问题 更多 >