降低分类阈值会导致将更多样本归为正类别,从而增加假正例和真正例的个数。我们在上面提到,为了计算ROC曲线上的点,可以使用不同的分类阈值多次评估逻辑回归模型,但这样做效率非常低。幸运的是,有一种基于排序的高效算法可以为我们提供此类信息,这种算法称为曲线下面积。曲线下面积表示“ROC曲线下面积(Area Under the ROCCurve,AUC)”。也就是说,曲线下面积测量的是从(0,0)到(1,1)整个ROC曲线以下的整个二维面积。
借助曲线下面积,我们可以有效解读概率。如果要拿一个随机正分类样本,闭上眼睛从分布区域中拿起一个,再拿起一个随机负分类样本,则模型正确地将较高分数分配给正分类样本而非负分类样本的概率是多少?在某种意义上,出现配对顺序不正确的概率是多少?结果表明,这个概率正好等于ROC曲线下面积代表的概率值。因此,如果看到ROC曲线下面积的值是0.9,那么这就是得出正确的配对比较结果的概率。
9.4.6 预测偏差
预测偏差是通过将我们预测的所有项的总和与观察到的所有项的总和进行比较来定义的。总的来说,我们希望预测的预期值与观察到的值相等。如果不相等,则称模型存在一定的偏差。偏差为0表示预测值的总和与观察值的总和相等。
逻辑回归预测应当无偏差,即“预测平均值”应当约等于“观察平均值”。预测偏差指的是这两个平均值之间的差值,即预测偏差=(预测平均值-数据集中相应标签的平均值)。如果出现非常高的非零预测偏差,则说明模型某处存在错误,因为这表明模型对正类别标签的出现频率预测有误。例如,假设所有电子邮件中平均有1%的邮件是垃圾邮件。一个出色的垃圾邮件模型应该预测到电子邮件平均有1%的可能性是垃圾邮件(换言之,如果我们计算单个电子邮件是垃圾邮件的预测可能性的平均值,则结果应该是1%)。然而,如果该模型预测电子邮件是垃圾邮件的平均可能性为20%,那么我们可以得出结论,该模型出现了预测偏差。如果某个模型偏差不为零,则意味着可能存在问题,告知我们需要探究某些方面来调试模型。
逻辑回归可预测0\~1的值。不过,所有带标签样本都正好是0(例如,0表示“非垃圾邮件”)或1(例如,1表示“垃圾邮件”)。因此,在检查预测偏差时,无法仅根据一个样本准确地确定预测偏差,必须在“一大桶”样本中检查预测偏差。也就是说,只有将足够的样本组合在一起,以便能够比较预测值(例如0.392)与观察值(例如0.394),逻辑回归的预测偏差才有意义。所以,我们通过以下方式构建桶:
●以线性方式分解目标预测。
●构建分位数。
请看以下某个特定模型的校准曲线(见图9-23)。每个点表示包含1000个值的分桶。两个轴具有以下含义:
●.x 轴表示模型针对该桶预测的平均值。
● y轴表示该桶的数据集中的实际平均值。
两个轴均采用对数尺度。
第9章 TensorFlow 高级知识
285