clf.score(X_train,Y_train)在决策树中评估什么?

时间:2019-05-03 13:50:11

标签: python machine-learning scikit-learn classification decision-tree

我是机器学习的初学者,现在正在为决赛做一个项目。我正在尝试构建决策树,并在线查找以下代码。

我的问题是:

  • clf.score(X_train,Y_train)在决策树中评估什么?输出在以下屏幕截图中,我想知道该值是什么?

    clf = DecisionTreeClassifier(max_depth=3).fit(X_train,Y_train) print("Training:"+str(clf.score(X_train,Y_train))) print("Test:"+str(clf.score(X_test,Y_test))) pred = clf.predict(X_train)

    输出:

    enter image description here

  • 在以下代码中,我认为它可以为模型计算几个分数。我设置的max_depth越高,得分越高。这对我来说很容易理解。但是,我想知道这些数字与上一个屏幕截图中“训练和测试”的值之间有何区别?

    enter image description here

  • 我的目标是预测房价是否超过2万。选择最合适和最简单的模型时应该考虑哪个分数?

1 个答案:

答案 0 :(得分:1)

正如评论中正确指出的那样,这实际上是平均训练准确性;您只需将第二张屏幕截图中的四个不同得分与第一张屏幕截图中的训练得分进行比较,就应该已经能够猜到这一点。但是无论如何,在开始在此处提出此类问题之前,您应该先查阅相关的文档,在类似情况下,该文档可以说是您的最好的朋友。引用scikit-learn score docsDecisionTreeClassifier方法:

  

得分 (X,y,sample_weight =无)

     

返回给定测试数据和标签的平均准确度。