非常规解释:分类ML模型的十大模型性能指标

2020-06-21 12:31:00

全文共3574字,预计学习时长11分钟

非常规解释:分类ML模型的十大模型性能指标

图源:unsplash

本文将带大家了解10个最重要的模型性能指标,这些指标可用于评估分类模型的模型性能。一旦了解了指标的正确用法以及如何根据问题陈述来解释这些指标,衡量分类模型的强度就成为了轻而易举的事。

我们将使用一个具有“是”和“否”标签的数据集示例来训练逻辑回归模型。该用例可以是任何分类问题,包括垃圾邮件检测,癌症预测,损耗率预测,活动目标预测等。本文将在需要时引用特殊用例。现在考虑一个简单的逻辑模型,该模型必须预测“是”或“否”。

首先,逻辑模型可以提供两种输出:

1.以类别标签作为输出值(是/否,1/0,恶性/良性,耗损/保留,垃圾邮件/非垃圾邮件等)。

2.以0到1之间的概率值作为输出值,用于表示事件对于特定观测的可能性。

类标签场合可以进一步划分为平衡或不平衡数据集的情况,这两种情况都不应该也不能基于相似的指标进行判断。某些指标更适用于其一而不适用于另一种情况,反之亦然。同样,概率方案的模型性能指标也不同于类标签方案。

下面的流程图既是本文的一个完美总结,也是一个完美序言。

非常规解释:分类ML模型的十大模型性能指标

 

非常规解释:分类ML模型的十大模型性能指标

 

1.混淆矩阵

非常规解释:分类ML模型的十大模型性能指标

 

不管构建什么样的统计或ML模型,我们都以开发数据集作为开始。将该数据集分为两部分:训练和测试。保留测试数据集,并使用训练数据集训练模型。

一旦模型准备好进行预测,就可以尝试对测试数据集进行预测。将结果分为类似上图所示的矩阵,就可以看到模型预测正确或错误的数量。我们使用测试数据集中的数字填充以下4个单元格(假设包含1000个观察值)。

非常规解释:分类ML模型的十大模型性能指标

 

· TP(真阳性):测试数据集中该列的实际标签为“是”,逻辑回归模型也预测为“是”。(500个观测值)

· TN(真阴性):测试数据集中该列的实际标签为“否”,逻辑回归模型也预测为“否”。(200个观测值)

· FP(假阳性):在测试数据集中该列的实际标签为“否”,而逻辑回归模型预测为“是”。(100个观测值)

· FN(假阴性):在测试数据集中该列的实际标签为“是”,而逻辑回归模型预测为“否”。(200个观测值)

这4个单元格构成了“混淆矩阵”,就像矩阵一样,它可以通过清晰描绘模型的预测能力来减轻所有关于模型优劣的困惑。混淆矩阵是一个表格,通常用于描述分类模型(或“分类器”)用于一组已知真实值的测试数据上的性能。

非常规解释:分类ML模型的十大模型性能指标

 

2.第1类错误

非常规解释:分类ML模型的十大模型性能指标

 

第1类错误也称为假阳性(false positive),其发生原因是分类模型错误地将“虚假”的观测预测为“真实”。

例如:假设逻辑回归模型正被应用于垃圾邮件检测用例。如果模型将原本很重要的电子邮件标记为了垃圾邮件,那么这就是该模型第1类错误的示例。

在这个特定的问题陈述中,我们应尽量减少第1类错误,因为将重要邮件归为垃圾邮件可能会造成严重后果。

非常规解释:分类ML模型的十大模型性能指标

 

3.第2类错误

非常规解释:分类ML模型的十大模型性能指标

 

第2类错误也称为假阴性(false negative),其发生原因是分类模型错误地将“真实”的观测预测为“错误”。

假设逻辑回归模型正在处理一个用例,它必须预测一个人是否患有癌症。如果模型将患有癌症的人标记为了健康人,由此导致了分类错误,那么这就是该模型发生第2类错误的例子。

在这个特定的问题陈述中,我们应尽可能地减少第2类错误,因为在这种情况下,如果受影响的患者一直没有被正确诊断,假阴性可能导致死亡。

非常规解释:分类ML模型的十大模型性能指标

 

4.准确度

非常规解释:分类ML模型的十大模型性能指标

图源:unsplash

以上讨论的三个指标都是通用指标,与训练和测试数据的种类以及用于问题陈述的分类算法的种类无关。

我们现在将转而讨论非常适合特定数据类型的指标。下文将讨论准确度,这是最适合平衡数据集的指标。请参考下图:

非常规解释:分类ML模型的十大模型性能指标

 

如图所示,平衡数据集是一个训练数据由1/0,是/否,正/负平均分类的数据集。换句话说,如果两个类别标签的比率出现偏差,模型将偏向其中一个类别。假设我们有一个平衡数据集,由此来学习什么是准确度。

非常规解释:分类ML模型的十大模型性能指标

 

准确度用于衡量结果与真实值的接近程度。它告诉我们分类模型能够多么准确地预测问题陈述中给出的类别标签。

假设分类模型正在尝试预测客户流失情况。在上图中,在总计700位实际流失的客户(TP + FN)中,该模型能够正确分类500位流失的客户(TP)。同样,在总计300个保留客户(FP + TN)中,该模型能够正确分类200个保留客户(TN)。

准确度=(TP + TN)/总客户人数

在上述情况下,该模型在1000个客户的测试数据集上的准确度为70%。

现在,我们了解到准确度是仅应用于平衡数据集的指标。为什么会这样呢?

非常规解释:分类ML模型的十大模型性能指标

 

此例中,该模型是在不平衡数据集上训练的,甚至测试数据集也是不平衡的。准确度指标为72%,这可能会让我们觉得该模型在分类方面做得很好。

但仔细观察,此模型在预测负标签方面做得很糟糕。它仅正确预测了100个负样本中的20个。因此,如果数据集不平衡,则不应该使用“准确度”这一度量标准。

如果数据集不平衡,该使用什么指标呢?答案是召回率和精度。让我们详细了解这些指标。

非常规解释:分类ML模型的十大模型性能指标

 

5.召回率/灵敏度/真阳性率

非常规解释:分类ML模型的十大模型性能指标

 

召回率/灵敏度/ TPR(真阳性率)试图回答以下问题:即正确识别实际阳性的比例是多少?

非常规解释:分类ML模型的十大模型性能指标

 

上图的召回率为78%。召回率通常用于真实检测极为重要的用例中。就比如问题陈述中的癌症预测,股票市场分类等要求假阴性被最小化的情况,这意味着召回率/灵敏度被最大化。

非常规解释:分类ML模型的十大模型性能指标

 

6.精度

非常规解释:分类ML模型的十大模型性能指标

 

精度试图回答以下问题:阳性结果的正确比例是多少?

非常规解释:分类ML模型的十大模型性能指标

 

上图示例的精度为75%。精度通常用于要求没有大量误报的用例。

在垃圾邮件检测案例中,如上文所述,误报指不是垃圾邮件但被分类模型分类为垃圾邮件的观测结果。太多的误报可能会破坏开发垃圾邮件分类器的目的。在这种情况下,精度可方便地判断模型性能。

非常规解释:分类ML模型的十大模型性能指标

 

7.特异性

非常规解释:分类ML模型的十大模型性能指标

 

特异性(也称为真阴性率)可衡量正确识别出的实际阴性的比例。

非常规解释:分类ML模型的十大模型性能指标

 

基于用来理解精度的相同垃圾邮件检测分类器示例。特异性告诉我们模型能够准确分类多少个负样本。在此例中,特异性为33%,这对于垃圾邮件检测模型不是一个很好的分数,因为这意味着大多数非垃圾邮件将错误地归类为垃圾邮件。

通过查看特异性指标,我们可以得出该模型需要改进的结论。

非常规解释:分类ML模型的十大模型性能指标

 

8.F1分数

我们知道,在某些问题陈述中,较高的召回率优先于较高的精度,反之亦然。但在某些用例中,这一区别并不十分明晰。作为开发人员,我们希望对召回率和精度给予同样的关注。

这时可以使用另一个指标:F1得分。它同时取决于精度和召回率。

在二分类的统计分析中,F1分数(也称为F分数或F量度)可用于衡量测试准确性。它同时考虑了精度p和测试的召回率r来计算分数:

非常规解释:分类ML模型的十大模型性能指标

 

在转而讨论最后两个指标之前,以下是*提供的一个很好的摘要表,其中涵盖了本文迄今为止讨论的所有指标。

非常规解释:分类ML模型的十大模型性能指标

 

到目前为止,我们已经讨论了用于预测类标签分类模型的模型性能指标。现在来研究基于概率的模型的指标吧。

非常规解释:分类ML模型的十大模型性能指标

 

9.ROC曲线-AUC值

曲线下面积(AUC),接收操作特性曲线(ROC),这是用于衡量模型性能的最重要指标之一,在数据科学领域非常流行。

非常规解释:分类ML模型的十大模型性能指标

图源:unsplash

例如,我们有一个分类模型,该模型给出的概率值介于0到1之间,以预测一个人肥胖的概率。接近0的概率值表示所考虑的人肥胖的概率非常低,而接近1的概率值表明该人肥胖的概率很高。

现在,默认情况下,如果我们考虑阈值为0.5,则所有概率≤0.5的人将被分类为“非肥胖”,而概率> 0.5的人将被分类为“肥胖”。但是,我们可以更改此阈值。若将阈值设为0.3或0.9会怎样?

为了简化理解,我们抽取了10个人作为样本。要绘制ROC曲线,我们必须在x轴上绘制特异性(即假阳性率),在y轴上绘制灵敏度(即真阳性率)。ROC(接收操作特性)曲线告诉我们模型对两件事物的区分能力有多强。优质模型可以准确地区分两者。而不良模型将很难区分两者。

我们将看到4种不同的情况,它们对阈值的选择不同。我们还将为ROC曲线计算相应的x和y轴值。

非常规解释:分类ML模型的十大模型性能指标

第二种情况:阈值=0.6

非常规解释:分类ML模型的十大模型性能指标

第三种情况:阈值=0.3

非常规解释:分类ML模型的十大模型性能指标

第四种情况:阈值=0

现在,我们有了4个数据点,据此可以绘制如下图所示的ROC曲线。

非常规解释:分类ML模型的十大模型性能指标

 

非常规解释:分类ML模型的十大模型性能指标

 

因此,这就是通过为分类模型分配不同的阈值创建不同的数据点用以生成ROC曲线,并以此绘制ROC曲线的方法。ROC曲线下的面积称为AUC。AUC越大,模型越好。ROC曲线离中线越远,模型越好。由此,ROC-AUC帮助我们判断分类模型的性能,并为我们提供从多种分类模型中选择一个模型的方法。

非常规解释:分类ML模型的十大模型性能指标

 

10. PR曲线

如果数据大部分位于负标签上,那么ROC-AUC的结果将无法过多地代表现实,因为我们主要关注的是阳性率方法,即y轴上的真阳性率和x轴上的假阳性率。例如下图所示:

非常规解释:分类ML模型的十大模型性能指标

 

本示例中,大多数数据都位于负标签下,而ROC-AUC不会捕获该信息。在这种情况下,我们转向PR曲线,它是精度-召回率曲线。在PR曲线中,我们将计算并在Y轴上绘制精度,在X轴上绘制召回率,以查看模型的效果。

以上就是分类机器学习模型的十大指标,你get了嘛?