关于人工智能:机器学习模型的度量选择二

54次阅读

共计 2857 个字符,预计需要花费 8 分钟才能阅读完成。

作者 |Alvira Swalin
编译 |VK
起源 |Medium

本系列的第二局部次要探讨分类度量

在第一篇中,咱们探讨了回归中应用的一些重要指标、它们的优缺点以及用例。这一部分将集中探讨分类中罕用的度量,以及在具体的背景中应该抉择哪种。

定义

在探讨每种办法的优缺点之前,咱们先理解一下分类问题中应用的根本术语。如果你曾经相熟这个术语,能够跳过这个局部。

  • 召回率或 TPR(真正例率):所有正例中正确辨认为正例的项目数 =TP/(TP+FN)
  • 特异性或 TNR(真反例率):所有反例中正确辨认为反例的项目数 =TN/(TN+FP)
  • 精确度:在确定为正例的我的项目中,正确确定为正例的项目数 =TP/(TP+FP)
  • 假正例率或 I 型谬误:所有反例中被谬误辨认为正例的项目数 =FP/(FP+TN)
  • 假反例率或 II 型谬误:所有正例中被谬误辨认为反例的项目数 =FN/(FN+TP)

  • 混同矩阵

  • F1 度量:精确性和召回率的和谐平均值。F1 = 2*Precision*Recall/(Precision + Recall)
  • 准确率:正确分类的我的项目总数百分比 (TP+TN)/(N+P)

ROC-AUC 评分

ROC-AUC 得分的概率解释是,如果随机抉择一个正案例和一个负案例,依据分类器,正案例高于负案例的概率由 AUC 给出。

从数学上讲,它是由灵敏度曲线(TPR)下的面积计算的。

FPR(1- 特异性)。现实状况下,咱们心愿具备高灵敏度和高特异度,但在理论状况下,敏感性和特异度之间始终存在衡量。

ROC-AUC 的一些重要特色是

  • 该值的范畴能够是 0 到 1。然而,均衡数据的随机分类器的 auc 得分是 0.5
  • ROC-AUC 评分与分类阈值集无关。F1 分数不一样,在概率输入的状况下,F1 分数须要一个阈值确定

Log 损失

对数损失是一种精度测量,它联合了以下二进制类表达式给出的概率置信度的概念:

它思考了你的预测的不确定性,基于它与理论标签的差别。在最坏的状况下,假如你预测的概率都是 0.5。因而,对数损失将变成 -log(0.5)=0.69。

因而,咱们能够说,思考到理论的概率,任何高于 0.6 的都是一个十分蹩脚的模型。

案例 1

Log 损失与 ROC 和 F1 度量的比拟

以案例 1 为例,模型 1 在预测相对概率方面做得更好,而模型 2 预测的概率值是有序递增的。让咱们用理论分数来验证一下:

如果思考到 log 失落,模型 2 给出的 log 损失最高,因为相对概率与理论标签有很大差别。但这与 F1 和 AUC 评分齐全不统一,依据该评分模型 2 具备 100% 的准确率。

此外,你能够留神,对于不同的阈值,F1 得分会变动,在默认阈值为 0.5 时,F1 更喜爱模型 1 而不是模型 2。

从上述示例得出的推论:

  • 如果你关怀相对概率差,就用对数损失
  • 如果你只关怀某一个类的预测,而不想调整阈值,那么应用 AUC score
  • F1 分数对阈值敏感,在比拟模型之前,你须要先调整它

案例 2

他们如何解决类别不均衡的状况?

这两个模型的惟一不同之处是它们对观测 13 和 14 的预测。模型 1 在对观测值 13(标签 0)进行分类方面做得更好,而模型 2 在对观测值 14(标签 1)进行分类方面做得更好。

咱们的指标是看哪个模型能更好地捕捉到不均衡类分类的差别(标签 1 数据量少)。在欺诈检测 / 垃圾邮件检测这样的问题中,正例的标签总是很少,咱们心愿咱们的模型可能正确地预测正例,因而咱们有时会更喜爱那些可能对这些正例进行正确分类的模型

显然,在这种状况下,log 损失是失败的,因为依据 log 失落,两个模型的性能是雷同的。这是因为 log 损失函数是对称的,并且不区分类。

F1 度量和 ROC-AUC 评分在抉择模型 2 方面均优于模型 1。所以咱们能够应用这两种办法来解决类不均衡。但咱们必须进一步开掘,看看他们看待类别不均衡的形式有哪些不同。

在第一个例子中,咱们看到很少有正标签。在第二个例子中,简直没有负标签。让咱们看看 F1 度量和 ROC-AUC 如何辨别这两种状况。

ROC-AUC 评分解决多数负标签的状况与解决多数正标签的状况雷同。这里须要留神的一件乏味的事件是,F1 的分数在模型 3 和模型 4 中简直是一样的,因为正标签的数量很大,它只关怀正标签的谬误分类。

从以上例子得出的推论:

  • 如果你关怀的是一个数量较少的类,并且不须要管它是正是负的,那么抉择 ROC-AUC 分数。

你什么时候会抉择 F1 度量而不是 ROC-AUC?

当你有一个数量小的正类,那么 F1 的得分更有意义。这是欺诈检测中的常见问题,因为正标签很少。咱们能够通过上面的例子来了解这个陈说。

例如,在大小为 10K 的数据集中,模型 (1) 预测 100 个真正例数据中有 5 个正例数据,而另一个模型 (2) 预测 100 个真正例数据中的 90 个正例数据。显然,在这种状况下,模型 (2) 比模型 (1) 做得更好。让咱们看看 F1 得分和 ROC-AUC 得分是否都能捕捉到这种差别

  • 模型(1)的 F1 得分 =2*(1)*(0.1)/1.1 = 0.095
  • 模型(2)的 F1 得分 = 2*(1)*(0.9)/1.9 = 0.947

是的,F1 问题的差别反映了模型的体现。

  • 模型(1)的 ROC-AUC=0.5
  • 模型(2)的 ROC-AUC=0.93

ROC-AUC 也给模型 1 打了一个不错的分数,这并不是一个很好的性能指标。因而,对于不均衡的数据集,在抉择 roc-auc 时要小心。

你应该应用哪种度量来进行多重分类?

咱们还有三种类型的非二分类:

  • 多类:具备两个以上类的分类工作。示例:将一组水果图像分为以下任一类别:苹果、香蕉和桔子。
  • 多标签:将样本分类为一组指标标签。示例:将博客标记为一个或多个主题,如技术、宗教、政治等。标签是独立的,它们之间的关系并不重要。
  • 层次结构:每个类别都能够与相似的类别组合在一起,从而创立元类,这些元类又能够再次组合,直到咱们达到根级别(蕴含所有数据的汇合)。例子包含文本分类和物种分类。

在这个博客里,咱们只探讨第一类。

正如你在上表中看到的,咱们有两种类型的指标 - 微均匀和宏均匀,咱们将探讨每种指标的利弊。多个类最罕用的度量是 F1 度量、均匀精度、log 损失。目前还没有成熟的 ROC-AUC 多类评分。

多类的 log 损失定义为:

  • 在微平均法中,将零碎中不同汇合的真正例、假正例和假反例进行汇总,而后利用它们失去统计数据。
  • 在宏平均法中,取不同汇合上零碎的精度和召回率的平均值

如果存在类别不均衡问题,则采纳微平均法。


参考:

  1. https://classeval.wordpress.c…
  2. https://en.wikipedia.org/wiki…
  3. https://www.sciencedirect.com…
  4. https://stats.stackexchange.c…
  5. https://datascience.stackexch…

原文链接:https://medium.com/usf-msds/c…

欢送关注磐创 AI 博客站:
http://panchuang.net/

sklearn 机器学习中文官网文档:
http://sklearn123.com/

欢送关注磐创博客资源汇总站:
http://docs.panchuang.net/

正文完
 0