序
是正确的,但是原始的预测概率往往为极端的值,趋近于0或者1。
为了获得有意义的预测概率,我们可以使用校准(calibration)方法。
在scikit-learn中,可以使用CalibratedClassifierCV类,创建经由k折交叉验证调校过的预测概率。在CalibratedClassifierCV中,训练集被用来训练模型,测试集被用来校准预测概率,返回的预测概率是k折的平均值。
使用我们的解决方案,可以看到原始预测概率和调校过的预测概率之间的差别。在解决方案中,我们创建了一个高斯朴素贝叶斯分类器。如果训练这个分类器后,用它预测一个新观察值的分类概率,就会看到很极端的概率预测值:

但是,如果我们在这之后校准预测概率(在解决方案中就是这样做的),就会得到很不一样的结果:

CalibratedClassifierCV提供了两种校准方法:Platt sigmoid模型和保序回归,可以通过method参数来设置。受篇幅所限,这里不讲解其中的细节,但是需要说明一点,保序回归是无参的,在样本量很小的情况下(比如,只有100个观察值),它往往会过拟合。在上述解决方案中,因为所用的鸢尾花数据集只有150个观察值,所以我们使用了Platt sigmoid模型。



本书评论