我最近完成了一场Kaggle比赛,根据比赛要求使用了roc auc得分。在进行此项目之前,我通常使用f1分数作为衡量模型性能的指标。展望未来,我想知道如何在这两个指标之间进行选择?什么时候使用,它们各自的优缺点是什么?
顺便说一句,我在这里阅读了这篇文章AUC和F1评分之间有什么区别?,但没有告诉我何时使用。
在此先感谢您的帮助!
我最近完成了一场Kaggle比赛,根据比赛要求使用了roc auc得分。在进行此项目之前,我通常使用f1分数作为衡量模型性能的指标。展望未来,我想知道如何在这两个指标之间进行选择?什么时候使用,它们各自的优缺点是什么?
顺便说一句,我在这里阅读了这篇文章AUC和F1评分之间有什么区别?,但没有告诉我何时使用。
在此先感谢您的帮助!
Answers:
此处列出的度量均不是正确的准确性评分规则,即由正确模型优化的规则。考虑Brier得分和基于对数似然性的度量,例如伪。所述 -index(AUROC;一致概率)是不正确的,但是是用于描述一个单一的模型良好。它不够敏感,无法用于选择模型或仅比较两个模型。 c
计算公式:
ROC / AUC是相同的标准,PR(精确调用)曲线(F1分数,Precision,Recall)也是相同的标准。
真实数据倾向于在正样本和负样本之间产生不平衡。这种不平衡对PR的影响很大,但对ROC / AUC的影响不大。
因此,在现实世界中,由于正负样本非常不均匀,因此更多地使用了PR曲线。ROC / AUC曲线不能反映分类器的性能,但是PR曲线可以。
如果只是在研究论文中进行实验,则可以使用ROC,实验结果将更加美观。另一方面,PR曲线可用于实际问题,并且具有更好的解释性。
以上答案都是好的。
但是我要指出的一点是AUC(ROC下的区域)存在问题,尤其是数据不平衡(所谓的高度偏斜:很大)。这种情况在动作检测,欺诈检测,破产预测等方面非常普遍。也就是说,您关心的正面示例的发生率相对较低。
在数据不平衡的情况下,AUC仍可为您提供约0.8的虚假价值。但是,由于FP较大而不是TP较大(真正),所以它较高。
如下面的例子,
TP=155, FN=182
FP=84049, TN=34088
因此,当您使用AUC衡量分类器的性能时,问题在于AUC的增加并不能真正反映出更好的分类器。这只是太多负面例子的副作用。您可以简单地尝试数据集。
面对使用性能指标的不平衡数据建议的论文发现:“尽管ROC不受偏斜影响,但精确召回曲线表明ROC在某些情况下可能掩盖了较差的性能。” 寻找良好的性能指标仍然是一个悬而未决的问题。一般的F1分数可能有助于
其中是精度比较召回的相对重要性。
然后,我对数据不平衡的建议与这篇文章相似。您也可以尝试使用十进制表,可以通过搜索“二乘二分类和十进制表”来构建。同时,我也在研究此问题并将给出更好的措施。
对于某些多类别分类问题,分析和可视化ROC / AUC并不容易。您可能会研究以下问题:如何在多类分类中绘制ROC曲线?。在这种情况下,使用F1评分可能是更好的指标。
F1分数是信息检索问题的常见选择,并且在行业环境中很受欢迎。这是一个很好解释的示例,很难构建ML模型。在实际的业务环境中部署它们更加困难。