Kor*_*nee 7 machine-learning decision-tree feature-selection scikit-learn
对于一个项目,我使用scikit-learn的回归算法(Random Forest,Extra Trees,Adaboost and Bagging)比较了许多决策树.为了比较和解释它们,我使用了特征重要性,但是对于装袋决策树,这看起来并不可用.
我的问题:有人知道如何获取Bagging的功能重要性列表吗?
问候,Kornee
Mik*_*bov 10
你在谈论BaggingClassifier吗?它可以与许多基本估算器一起使用,因此没有实现功能重要性.有与模型无关的方法来计算特征重要性(参见例如https://github.com/scikit-learn/scikit-learn/issues/8898),scikit-learn不使用它们.
如果将决策树作为基本估算器,您可以自己计算要素重要性:它只是tree.feature_importances_
所有树中的平均值bagging.estimators_
:
import numpy as np
from sklearn.ensemble import BaggingClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
clf = BaggingClassifier(DecisionTreeClassifier())
clf.fit(X, y)
feature_importances = np.mean([
tree.feature_importances_ for tree in clf.estimators_
], axis=0)
Run Code Online (Sandbox Code Playgroud)
RandomForestClassifer在内部执行相同的计算.
归档时间: |
|
查看次数: |
2957 次 |
最近记录: |