在机器学习建模中,模型评估指标用于评估不同模型的优劣。
在分类任务中,最简单的评估指标莫过于错误率和精度了,错误率表示的是错误分类的样本个数占总样本个数的比例,精度则是1减去错误率。
错误率和精度的优点是:它们不仅仅适用于二分类问题,也同样适用于多分类问题。
但是单单看错误率和精度两个指标无法很好的对模型进行合适的评估。一方面,现在不少的模型最终都是预测一个类别的概率值,为了计算错误率和精度,得设定一个阈值,以便确定预测的正例和反例。这样相当于引入了一个新的超参数,会增加复杂性和不确定行。
另一方面,以周志华老师在《机器学习》[1]书中的西瓜为例,我们挑选西瓜往往关注的不是有多少比例的西瓜判断错了,而是关注:我挑选的瓜有多少比例是好瓜,或者有多少比例的好瓜被我挑选出来了。错误率和精度无法评估这方面的比例。
准确率(Precision)和召回率(Recall),以及真正率(Ture Positive Rate)和假正率(False Positive Rate)更加的适合用于模型的评估。
本篇博文首先介绍各种指标的数学公式和基本含义,然后介绍P-R曲线和ROC曲线,最后分析两者的联系和差异,以及如何选择。
一:基本定义
对于二分类问题,样本点的实际类别和预测的类别两辆组合,会产生4种情况:(1)实际为正,预测为正;(2)实际为正,预测为负;(3)实际为负,预测为正;(4)实际为负,预测为负。四种情况,可以组成如下的混淆矩阵(Confusion Matrix)。
然后,准确率P和召回率R定义如下: