二元分类模型评分
二元分类模型将结果分为两类,如“是”或“否”。可以通过各种评分度量评估模型分配结果的准确性。
这些度量揭示了模型的不同优点和缺点。它们中的任何一个自身都不能真正衡量是否真正适合。特别是,需要注意的是,总体准确度得分高并不意味着模型很好。例如,如果一个企业只有10%的转化率呢?该模型只需说没有潜在客户会转化,就能获得90%的准确率。这就是 F1、召回和精确性发挥作用的地方,有助于确定模型的优势和劣势的平衡。如果模型假设 100% 的潜在客户不会转化,则 F1 将为 0。
在二分类实验的训练过程中,自动生成以下图表,以提供对模型分数的快速分析:
混淆矩阵:总结了分类模型中预测结果准确性的图表。参阅混淆矩阵。
ROC 曲线:一张图表,显示了当实际结果为正时,机器学习模型在正向类方面有多准确。请参阅AUC 和 ROC 曲线。
混淆矩阵
二元分类问题的大多数度量是由 混淆矩阵 中的值的不同计算产生的。混淆矩阵是模型选项卡中显示的可视化之一。它显示了正确预测的实际真值和实际假值的数量,以及每个类的总数。图表中显示的值基于训练后用于验证模型性能的自动保持数据。数据集中的每条记录都被划分到以下四个象限之一:
-
为真的正 (TP) 是正确预测为真的实际真值。
-
假正面 (FP) 是错误预测为真的实际假值。
-
假负面 (FN) 是错误预测为假的实际真值。
-
为真的负 (TN) 是正确预测为假的实际假值。
在每个象限的数字下方,您还可以看到召回 (TP)、异常 (FP)、未命中(FN) 和特异性 (FN) 的百分比值。将鼠标悬停在某个值上可查看带有度量的工具提示。
任何实际案例都会在混淆矩阵中显示假正面和假负面。对训练数据的完美预测表明,模型已经记住了答案,在现实世界中表现不佳。您需要确保您捕捉到了足够多的真的正面结果和负面结果。
F1
F1 分数是一种衡量标准,通过关注正面预测和实际正面记录的准确性,试图考虑类不平衡时的准确性。可以看出,模型如何准确地捕捉重要的结果。该度量试图平衡召回和精确性,以理想地找到介于两者之间的东西。请注意,数据集越不平衡,F1 得分就越低,即使总体精度相同。
如果 F1 值较高,则所有其他评分度量都将较高。如果该值较低,则表明您需要进行进一步分析。然而,如果分数很高,或者如果拒绝分数远低于交叉验证分数,则可能是数据泄露的迹象。
F1 计算如下:2 x ((精度 x 召回) / (精度 + 召回))
重新调用
召回是真的正比率。它衡量了当某件事实际上是真的时,模型准确预测真的频率。也就是说,模型在数据集中找到所有真实案例的准确程度如何?召回是对正类良好记忆的量度。计算公式如下:TP / (TP + FN)
精度
精度也称为正预测值。当它预测某件事是真的时,它衡量模型正确的概率。计算公式如下:TP / (TP + FP)
召回和准确度之间的权衡
召回可以被描述为该模型覆盖的广度:它是否捕捉到了所有的真实情况,即使它做出了一些假性预测?它是否捕捉到尽可能多的真结果?精确性与召回有点相反。在这里,我们希望确保当模型预测为真时,预测为真是非常准确的。然而,如果有了高精度,我们最终会得到更多的假阴性结果,即使某些事情是真的,模型也会预测错误。
在不遗漏任何真实结果和确保预测为真实的结果中没有一个实际为假的之间存在权衡。偏向更高精度还是更高召回率是可取的,取决于您的业务用例。例如,在疾病诊断的预测中,您希望确保不会错过实际患有该疾病的患者,即假阴性。
-
如果假阴性的“成本”很高,那么偏向于高召回率的模型可能是合理的。
-
如果假阳性的“成本”很高,那么偏向于高精度的模型可能是合理的。
准确性
准确度衡量模型平均做出正确预测的频率。计算公式如下: (TP + TN) /(所有预测)
特异性
特异性是真正的负比率。它衡量了当某个东西实际上是假的时候,模型准确预测假的频率。计算公式如下:TN / (FP + TN)
MCC
马修斯相关系数 (MCC) 范围从 -1 到 1,其中 1 表示模型正确预测了每个样本。计算公式如下:((TP x TN) - (FP x FN)) / [(TP + FP) x (FN + TN) x (FP + TN) x (TP + FN)]^(1/2)
缺失率
漏报率是假阴性率。它是假阴性事件数与实际阳性事件总数之间的比率。计算公式如下:FN / (TP + FN)
异常
异常是假阳性率。它是误报数量与实际负面事件总数之间的比率。计算公式如下:FP / (FP + TN)
NPV
负预测值 (NPV) 衡量的是当模型做出错误预测时,模型正确的概率。计算公式如下:TN / (FN + TN)
日志丢失
对数损失是逻辑回归准确性的常用度量。较低的对数损失值意味着更好的预测 - 一个完美的模型的对数损失为 0。
AUC 和 ROC 曲线
曲线下面积 (AUC) 是一个更复杂的精度度量,可以帮助您了解模型的确定性。它描述了当实际结果为正时,模型在预测正类方面有多好。
AUC 定义为 ROC 曲线下的面积。ROC 曲线绘制了 0.0 和 1.0 之间的多个不同阈值的假阳性率(x 轴)与真阳性率(y 轴)。换句话说,它绘制了误报率与命中率的关系。该曲线有助于理解类别之间的分离是否可能,表明数据是否足够好,以准确区分预测结果。
真阳性率计算如下:TP / (TP + FN)
-
真阳性率越接近曲线下最大可能面积的 1.0,模型的确定性越高。
-
真阳性率越接近 0.5,模型的确定性越低。
下图显示了良好的 ROC 曲线。这是良好的曲线,因为曲线应尽可能接近 1,这给出了高 AUC。虚线是随机概率,50:50。如果 AUC 较低,则该曲线被视为较差的曲线。
阈值
阈值是预测为真的概率。它代表了假阳性和假阴性之间的权衡。阈值是根据算法确定的,模型中的每个算法都可能有不同的阈值。
阈值调整
阈值调整是确保选择正确阈值以优化二元分类模型的 F1 分数的有效方法。AutoML 计算从 0 到 1 的数百个不同可能阈值的精度和召回率。选择达到最高 F1 分数的阈值。
选择阈值而不是依赖默认的 0.5 阈值,会产生对阳性和阴性病例数不平衡的数据集更稳健的预测。
在图表中,阈值设置为 0.5。在这种情况下,实际为真且预测值小于 0.5 的记录得到的预测标签为假(假阴性)。
通过改变决定记录预测是真是假的阈值,我们可以偏向于更高的召回率或更高的精度。