Python 平均精度未正确显示(scikit)

Python 平均精度未正确显示(scikit),python,scikit-learn,Python,Scikit Learn,我正在使用sklearn的分类报告,这是输出: precision recall f1-score support 1 0.5525 0.8118 0.6575 71194 2 0.8782 0.1371 0.2372 13877 3 0.5343 0.6083 0.5689 61591 4 0.7953 0.3230

我正在使用sklearn的分类报告,这是输出:

         precision    recall  f1-score   support

      1     0.5525    0.8118    0.6575     71194
      2     0.8782    0.1371    0.2372     13877
      3     0.5343    0.6083    0.5689     61591
      4     0.7953    0.3230    0.4594     13187
      5     0.6621    0.6701    0.6661     57530
      6     1.0000    0.0008    0.0017      2391
      7     0.6655    0.2095    0.3187     30223
平均/总0.62210.5852 0.5566 249993

虽然当你手动操作时,你会发现这是不对的

知道为什么吗


对于其他算法的所有其他报告,我确实得到了正确的结果。我怀疑这与精度有关

我认为这可能是由不平衡的类造成的。我认为总数不是班级的平均数,而是所有例子的总数。因此,当类的大小不同时,您必须采用加权平均来获得相同的结果。

我认为这可能是由不平衡的类造成的。我认为总数不是班级的平均数,而是所有例子的总数。因此,当类别大小不同时,您必须采用加权平均值以获得相同的结果。

当使用
sklearn.metrics
函数对多类别数据计算精度/召回率/f1分数时,您可以选择平均策略(微观/宏观/加权)。有关更多详细信息,请参阅这些函数的说明。使用多类数据上的
sklearn.metrics
函数计算精度/召回率/f1分数时,可以选择平均策略(微观/宏观/加权)。有关更多详细信息,请参阅这些函数的。