我通常只是将其发布到 Stack Overflow,但我考虑了一下并意识到这实际上不是一个编码问题 - 这是一个 ML 问题。
对代码或其他任何内容的任何其他反馈都非常感谢和欢迎!
所以我正在 Kaggle 上做这个巨大的问题。我准备好了四个数据集:
features_train
功能测试
目标火车
目标_测试
考虑到这一点,我有两个问题,尽管第二个是重要的。
问题1:我对下一步的理解是否正确?
我们在训练数据上拟合我们的模型,然后我们创建一个预测 ( pred ),它试图根据我们的features_test数据进行预测。这意味着我们的pred和target_test数据集理论上应该是相同的(如果模型运行良好)。
这意味着为了证明模型的准确性,我们可以简单地比较pred和target_test之间的结果,这正是Sklearn 中的accuracy_score函数所做的。
问题2:使用模型的score方法和accuracy_score函数有什么区别?
这就是让我困惑的地方。您可以在单元格 97 中看到我使用的“模型 1”标题下的第一个单元格:
clf.score(features_test, target_test)
这是结果
0.8609865470852018
但是,后来,我也使用:
from sklearn.metrics import accuracy_score print(accuracy_score(target_test, pred))
这也导致
0.8609865470852018
这两个分数怎么一样?我做错了什么吗?或者这两个步骤基本上都在做同样的事情?如何..?该score()
属性是否有效地创建了一个pred
Dataframe 并在后台进行检查?
慕斯709654
相关分类