【问题标题】:Decision Tree - most influential parameter Python决策树——最具影响力的参数 Python
【发布时间】:2018-08-21 08:38:23
【问题描述】:

我有一个简单的 Python 决策树程序。有没有办法从 X 中找出(打印)导致结果的最有影响力的参数(或更多参数)? 例如: "预测结果为"是"。影响最大的参数是X项中的[0]值"

from sklearn import tree


X=[[100,3],[130,3],[80,2],[90,2],[140,3]]
Y=["yes","no","yes","yes","no"]

clf = tree.DecisionTreeClassifier()

clf = clf.fit(X,Y)

List1=[124,3]

prediction = clf.predict([List1])

print(prediction)

【问题讨论】:

    标签: python scikit-learn


    【解决方案1】:

    可以使用feature_importances_属性。

    特征重要性。越高,特征越重要。特征的重要性被计算为该特征带来的标准的(归一化)总减少。

    http://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html

    print(clf.feature_importances_)
    > [1. 0.]
    

    这里第二个特征重要性为零,表示该特征不包含在规则树中。

    【讨论】:

    • 但是 [1. 中的 1. 和 0. 是什么。 0.]。我试图预测 4-5 个不同值的结果,但我总是得到相同的结果 [1.0.]
    • @AleksandarBeat 列表中的每个值都是使用该特征分割的节点中加权重要性增益的总和。在小数据集中,它可能不那么明显。我将尝试添加一个示例。您可以绘制决策树以查看这些值的实际含义。看看这个问题:stackoverflow.com/questions/49170296/…,如果不清楚,请告诉我。
    猜你喜欢
    • 2016-04-04
    • 1970-01-01
    • 2012-10-20
    • 2021-08-23
    • 2016-03-12
    • 2021-08-19
    • 2020-06-05
    • 2014-06-15
    • 2011-01-18
    相关资源
    最近更新 更多