DecisionTreeClassifier

DecisionTreeClassifier

我尝试在DecisionTreeClassifier上使用GridSearchCV,但出现以下错误:
TypeError:必须以DecisionTreeClassifier实例作为第一个参数来调用未绑定(bind)方法get_params()(而是什么也不做)

这是我的代码:

from sklearn.tree import DecisionTreeClassifier, export_graphviz
from sklearn.model_selection import GridSearchCV
from sklearn.cross_validation import  cross_val_score

X, Y = createDataSet(filename)
tree_para = {'criterion':['gini','entropy'],'max_depth':[4,5,6,7,8,9,10,11,12,15,20,30,40,50,70,90,120,150]}
clf = GridSearchCV(DecisionTreeClassifier, tree_para, cv=5)
clf.fit(X, Y)

最佳答案

在调用GridSearchCV方法时,第一个参数应该是DecisionTreeClassifier的实例化对象,而不是类的名称。它应该是

clf = GridSearchCV(DecisionTreeClassifier(), tree_para, cv=5)

查看示例here以获得更多详细信息。

希望对您有所帮助!

10-06 11:18