【问题标题】:How to estimate the accuracy on a large dataset?如何估计大型数据集的准确性?
【发布时间】:2020-05-05 14:49:51
【问题描述】:

鉴于我有一个深度学习模型(前同事交接)。由于某种原因,train/dev 集丢失了。

在我的情况下,我想将我的数据集分为 100 个类别。数据集极度不平衡。数据集大小约千万

首先,我运行模型并获得对整个数据集的预测。

然后,我对每个类别抽取 100 条记录(根据预测),得到一个 10,000 个测试集。

接下来,我为测试集标记每条记录的ground truth,并计算每个类别的precision、recall、f1,得到F1-micro和F1-macro。

如何估计整个数据集的准确性或其他指标?我用每个类别的精度的加权和(权重是预测在整体上的比例)来估计是否正确?

由于预测类别的分布与真实类别的分布不同,我猜加权方法不起作用。任何人都可以解释一下吗?

【问题讨论】:

    标签: machine-learning metrics sampling evaluation multiclass-classification


    【解决方案1】:

    如果您采用加权平均,问题是如果您的分类器在多数类别上表现良好,但在少数类别上表现不佳(这是典型情况),它将不会反映在分数中。

    推荐的方法之一是使用平衡准确度分数(有关 scikit learn 实现,请参阅here)。基本上,它是所有召回分数的平均值:对于一个类中的每个观察,它查看有多少被正确分类,然后在所有类中取平均值。这将为您提供一个合理的总分来报告。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-20
      • 1970-01-01
      • 2015-12-09
      • 2018-12-24
      • 2018-09-08
      • 2023-03-08
      • 1970-01-01
      • 2019-09-16
      相关资源
      最近更新 更多