【发布时间】:2017-02-04 02:52:38
【问题描述】:
我观察到 scikit-learn clf.tree_.feature 偶尔会返回负值。例如-2。据我了解 clf.tree_.feature 应该返回功能的顺序。如果我们有特征名称数组
['feature_one', 'feature_two', 'feature_three'],然后 -2 将引用 feature_two。我对负指数的使用感到惊讶。通过索引 1 引用 feature_two 会更有意义。(-2 是便于人类消化的引用,而不是机器处理的引用)。我读对了吗?
更新:这是一个例子:
def leaf_ordering():
X = np.genfromtxt('X.csv', delimiter=',')
Y = np.genfromtxt('Y.csv',delimiter=',')
dt = DecisionTreeClassifier(min_samples_leaf=10, random_state=99)
dt.fit(X, Y)
print(dt.tree_.feature)
这是输出:
[ 8 9 -2 -2 9 4 -2 9 8 -2 -2 0 0 9 9 8 -2 -2 9 -2 -2 6 -2 -2 -2
2 -2 9 8 6 9 -2 -2 -2 8 9 -2 9 6 -2 -2 -2 6 -2 -2 9 -2 6 -2 -2
2 -2 -2]
【问题讨论】:
标签: scikit-learn decision-tree