如何解读 scikit-learn 的分类报告?
数据挖掘
分类
公制
二进制
2021-10-06 22:53:32
2个回答
分类报告是关于分类问题中的关键指标的。
您将获得精确度、召回率、f1 分数和对您尝试查找的每个课程的支持。
召回的意思是“你在这个类的元素总数中找到了多少这个类”
精度将是“该类别中有多少被正确分类”
f1-score是准确率和召回率之间的调和平均值
支持是数据集中给定类的出现次数(因此您有 37.5K 的 0 类和 37.5K 的 1 类,这是一个非常平衡的数据集。
问题是,精度和召回率被高度用于不平衡的数据集,因为在高度不平衡的数据集中,99% 的准确率可能毫无意义。
我会说你真的不需要查看这些指标来解决这个问题,除非绝对正确地确定给定的类。
要回答您的另一个问题,您无法比较两个类别的精度和召回率。这仅意味着您的分类器最好找到类 0 而非类 1。
准确率和召回率sklearn.metrics.precision_score
不recall_score
应该不同。但是只要不提供代码,这是不可能确定其根本原因的。
我们可以想象 Precision 和 Recall 是如何捕捉到一大群鱼的。
想象一下,我们在海上划船并放下我们的网。
如果鱼群很大,而网很小-> 我们会在网中的非常位置看到鱼,这意味着精度很高。但是我们只得到了一小部分的驱动,这意味着召回率很低。
同时,只有一小群鱼,但我们得到了一张巨大的网-> 我们会看到只有一小部分网有鱼,这意味着精度低。但幸运的是,我们在驱动器中捕获了每条鱼,意味着召回率很高。