使用scikit-learn DecisionTreeClassifier进行聚类

Guy*_*ini 6 python machine-learning scikit-learn

使用sklearn.tree.DecisionTreeClassifier时,分类器具有预测概率和类的方法.

有没有办法使用相同的树进行聚类:对于给定的输入向量x,只需告诉哪个叶子x属于哪个?

Guy*_*ini 10

我找到了自己的问题的答案 - 将其留在这里作为下次有人寻找时的参考:

import numpy as np
import sklearn.tree
clf = sklearn.tree.DecisionTreeClassifier()
clf.fit(X,y)
clf.tree_.apply(np.asfortranarray(X.astype(sklearn.tree._tree.DTYPE)))
Run Code Online (Sandbox Code Playgroud)

  • 这绝对是我们需要更多文档的东西.顺便说一下,你可能对RandomTreesEmbedding感兴趣:http://scikit-learn.org/dev/modules/generated/sklearn.ensemble.RandomTreesEmbedding.html#sklearn.ensemble.RandomTreesEmbedding森林也直接有一个"应用"功能. (2认同)