偏置数据集的查全率和查全率



假设一个两类分类问题。一个类有超过95%的标记数据,另一个类有5%的标记数据。这两个阶级很有偏见。

我正在做类验证来评估不同的分类器,我发现如果分类器有意预测到具有大多数(95%)标签的类,即使其他类的预测结果不准确,从精度/召回率来看,很难区分,因为其他类只有5%的标记数据。

以下是我正在使用的方法/指标(使用精度/召回率)。我想知道是否有其他更好的指标或方法来评估,考虑到次要的5%类别?我将权重分配给较小的5%类别,但我在这里要求更系统的方法来测量有偏差的数据集。

使用scikit learn + python 2.7.

scores = cross_validation.cross_val_score(bdt, X, Y, cv=10, scoring='recall_weighted')
print("Recall: %0.2f (+/- %0.2f)" % (scores.mean(), scores.std() * 2))
scores = cross_validation.cross_val_score(bdt, X, Y, cv=10, scoring='precision_weighted')
print("Precision: %0.2f (+/- %0.2f)" % (scores.mean(), scores.std() * 2))

这是统计学中的一个常见问题,因此您可以在互联网上找到大量的资源。检查,例如,8战术对抗不平衡的训练数据。

最简单的方法可能是重新采样数据。最简单的方法是复制少数类,直到两个类的代表人数相等。统计上更合理的方法是,首先了解类别的概率分布,然后为每个类别绘制n样本。这样,你就有了一个平衡的数据集。

当然,这取决于你的数据——或者仅仅是在你的数据的一个无偏子集上学习。更多选项见文章

相关内容

  • 没有找到相关文章

最新更新