评估分类模型

已完成

分类模型的训练准确度远不如在给定新的未查看数据时模型的工作效果重要。 毕竟,我们训练模型,以便它们可用于我们在现实世界中发现的新数据。 因此,在训练分类模型后,应评估它在一组新的未查看数据上的表现。

在之前的单元中,我们创建了一个模型,该模型将基于患者的血糖水平来预测患者是否患有糖尿病。 现在,当应用于一些不属于训练集的数据时,我们可得到以下预测:

x y
83 0 0
119 1 1
104 1 0
105 0 1
86 0 0
109 1 1

回想一下,x 是指血糖水平,y 是指是否确实患有糖尿病,ŷ 是指模型就其是否患有糖尿病的预测。

仅计算正确预测数有时具有误导性,或者对于我们理解它在现实世界中将发生的错误类型来说过于简单。 为了获得更多详细信息,我们可对结果制表形成一个名为“混淆矩阵”的结构,如下所示:

混淆矩阵显示 2 个真阴性、2 个真阳性、1 个假阴性和 1 个假阳性。

该混淆矩阵显示了所有用例的总数,其中:

  • 模型预测得到 0,且实际标签为 0(真阴性,左上方)
  • 模型预测得到 1,且实际标签为 1(真阳性,右下方)
  • 模型预测得到 0,且实际标签为 0(假阴性,左下方)
  • 模型预测得到 1,且实际标签为 1(假阳性,右上方)

混淆矩阵中的单元格通常带有阴影;值越大,阴影越重。 这样,可更轻松地按从左上角到右下角的顺序看到强烈的对角线趋势,突出显示预测值和实际值相同的单元格。

通过这些核心值,你可对一些其他指标进行计算,这可帮助你评估模型的性能。 例如:

  • 准确度:(TP+TN)/(TP+TN+FP+FN) - 在所有预测中,有多少是正确的?
  • 召回率:TP/(TP+FN) - 在所有为阳性的用例中,模型识别出了其中的多少个
  • 精准率:TP/(TP+FP) - 在模型预测为阳性的所有用例中,实际上有多少是阳性的