如何应用从 scikit-learn 决策树学习到的规则
How to apply learnt rules from sciki-learn decision tree
我正在 scikit-learn 中构建决策树。搜索 Whosebug 可以找到一种方法来提取与每个叶子关联的规则。现在我的目标是将这些规则应用于新的观察,看看新的观察会在哪片叶子中结束。
这是一个抽象的例子。假设我们得到了叶子 #1 的规则。 a<5 且 b>7,则观察属于叶 #1。现在我想进行新的观察并将这些规则应用于它以检查它最终会变成哪一片叶子。
我正在尝试使用决策树进行分割。
可以找到将决策树分类器与 scikit 学习结合使用的示例 here。此示例包括训练分类器和验证第二个数据集的结果。
在将经过训练的决策树应用于新数据样本时,predict function 可用于 return 新数据样本的结果:
predict(X, check_input=True)
其中 X 是正在检查的新数据样本的特征向量。
This link 可能会帮助您了解如何输出决策树分类器的规则。
您可以使用DecisionTreeClassifier
的apply
方法来获取每个样本被预测为的hte叶的索引。
from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier()
clf.fit([[1,2,3],[10,19,20],[6,7,7]],[1,1,0])
clf.apply([[6,7,7]])
# array([3])
我正在 scikit-learn 中构建决策树。搜索 Whosebug 可以找到一种方法来提取与每个叶子关联的规则。现在我的目标是将这些规则应用于新的观察,看看新的观察会在哪片叶子中结束。
这是一个抽象的例子。假设我们得到了叶子 #1 的规则。 a<5 且 b>7,则观察属于叶 #1。现在我想进行新的观察并将这些规则应用于它以检查它最终会变成哪一片叶子。
我正在尝试使用决策树进行分割。
可以找到将决策树分类器与 scikit 学习结合使用的示例 here。此示例包括训练分类器和验证第二个数据集的结果。
在将经过训练的决策树应用于新数据样本时,predict function 可用于 return 新数据样本的结果:
predict(X, check_input=True)
其中 X 是正在检查的新数据样本的特征向量。
This link 可能会帮助您了解如何输出决策树分类器的规则。
您可以使用DecisionTreeClassifier
的apply
方法来获取每个样本被预测为的hte叶的索引。
from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier()
clf.fit([[1,2,3],[10,19,20],[6,7,7]],[1,1,0])
clf.apply([[6,7,7]])
# array([3])