我是机器学习的初学者,现在正在为决赛做一个项目。我正在尝试构建决策树,并在线查找以下代码。
我的问题是:
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)
输出:
在以下代码中,我认为它可以为模型计算几个分数。我设置的max_depth越高,得分越高。这对我来说很容易理解。但是,我想知道这些数字与上一个屏幕截图中“训练和测试”的值之间有何区别?
我的目标是预测房价是否超过2万。选择最合适和最简单的模型时应该考虑哪个分数?
答案 0 :(得分:1)
正如评论中正确指出的那样,这实际上是平均训练准确性;您只需将第二张屏幕截图中的四个不同得分与第一张屏幕截图中的训练得分进行比较,就应该已经能够猜到这一点。但是无论如何,在开始在此处提出此类问题之前,您应该先查阅相关的文档,在类似情况下,该文档可以说是您的最好的朋友。引用scikit-learn score
docs的DecisionTreeClassifier
方法:
得分 (X,y,sample_weight =无)
返回给定测试数据和标签的平均准确度。