11.6 评估多元分类器
问题描述
评估一个能预测三个或更多分类的分类器性能。
解决方案
使用能够处理两个以上分类的评估指标进行交叉验证:

讨论
如果分类数据均衡(比如,每个分类的样本数大致相等),准确率是评估模型性能的一个简单且可解释的指标。准确率是被正确预测的样本数与样本总数之比,并且在二元分类器和多元分类器中的效果一样好。但是,当分类数据不均衡时(这种情况很常见),应该使用其他评估指标。
scikit-learn许多内置的指标都是用于评估二元分类器的,但是其中的一部分指标也可以应用在多元分类器上。精确度、召回率和F₁分数是在前面几节已经详细介绍过的有用指标。虽然它们最初都是为二元分类器设计的,但我们可以将数据看作一组二元分类数据的集合,使用上述指标来评估多元分类器。这就能对每一个分类应用二元分类器的指标,就好像它是数据中的唯一分类一样,然后对所有分类的得分求平均值,得到总分数:
在上面的代码中,_macro指用来求各分类评估分数的平均值的方法:

macro
计算每个分类的得分,然后取加权平均值,每个分类的权值相同。
weighted
计算每个分类的得分,然后取加权平均值,权值为每个分类的样本数占总样本数的比例。
micro
计算每个样本分类组合的得分,然后取平均值。



本书评论