Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 什么';拟合模型的评分方法与scikit learn的准确度评分之间的差异是什么?_Python_Machine Learning_Scikit Learn - Fatal编程技术网

Python 什么';拟合模型的评分方法与scikit learn的准确度评分之间的差异是什么?

Python 什么';拟合模型的评分方法与scikit learn的准确度评分之间的差异是什么?,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,我通常只是将此发布到Stack Overflow,但我想了想,意识到这实际上不是一个编码问题,而是一个ML问题 任何关于代码或任何其他内容的反馈都将受到充分的赞赏和欢迎 所以我在做卡格尔号上的泰坦尼克号问题。我准备好了四个数据集: 火车的特点 特征检验 目标列车 靶标试验 考虑到这一点,我有两个问题,尽管第二个问题很重要 问题1:我对下一步的理解正确吗? 我们在训练数据上拟合我们的模型,然后我们创建一个预测(pred),它试图根据我们的特征和测试数据进行预测。这意味着我们的pred和tar

我通常只是将此发布到Stack Overflow,但我想了想,意识到这实际上不是一个编码问题,而是一个ML问题

任何关于代码或任何其他内容的反馈都将受到充分的赞赏和欢迎

所以我在做卡格尔号上的泰坦尼克号问题。我准备好了四个数据集:

  • 火车的特点
  • 特征检验
  • 目标列车
  • 靶标试验
考虑到这一点,我有两个问题,尽管第二个问题很重要

问题1:我对下一步的理解正确吗?

我们在训练数据上拟合我们的模型,然后我们创建一个预测(pred),它试图根据我们的特征和测试数据进行预测。这意味着我们的pred和target_测试数据集在理论上应该是相同的(如果模型运行良好)

这意味着为了证明模型的准确性,我们可以简单地比较pred和target_测试之间的结果,这是准确性_评分函数从Sklearn中所做的

问题2:使用模型的评分方法与准确度评分函数有什么区别?

这就是让我困惑的地方。您可以在单元格97中看到我使用的“Model 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
数据帧并在后台进行检查?

对于此类问题,可以说您最好的朋友是文档;引用scikit学习文档:

有3种不同的API用于评估模型质量 预测:

  • 估计员得分方法:估计员有一个
    得分
    方法,为他们设计的问题提供默认的评估标准 解决。本页未讨论这一点,但在每个估计器的 文件
  • 评分参数:使用交叉验证的模型评估工具(例如
    模型选择。交叉值
    model_selection.GridSearchCV
    )依赖于内部评分策略。 评分参数:定义模型一节对此进行了讨论 评价规则
  • 度量函数
    度量
    模块为特定目的实现评估预测误差的函数。这些指标是 有关分类指标、多标签排名的详细信息,请参见章节 指标、回归指标和聚类指标
在代码(、和)中使用的所有3个分类器的文档中,有相同的描述:

得分(X,y,样本重量=无)
返回数据集上的平均精度 给定测试数据和标签

这回答了您关于所用特定型号的第二个问题

尽管如此,在盲目相信估计器附带的
score
方法之前,您应该始终检查文档;例如,
score
返回确定系数R^2,这实际上从未被构建预测模型的ML从业者使用过(统计学家经常使用它建立解释性模型,但这是另一回事)


顺便说一句,我粗略地看了一下您链接到的代码,我看到您计算了MSE、MAE和RMSE等指标——请记住,这些是回归指标,它们在分类设置中没有意义,比如您在这里遇到的分类设置(反过来,在回归设置中准确度是没有意义的)…

clf.score和Accurance\u score都计算相同的指标。它们都计算正确分类的标签分数。