一、引入
从上一节的例子中可以看出,如果我们的目标是希望尽量捕获样本量较少的类,那么,准确率这个模型评估指标就会失效,所以我们就需要有新的评估指标来衡量模型的性能。单纯地追求捕捉出样本量较少的类会导致成本太高,而不顾及这些类又会使得模型的性能不够。所以在实际应用中,我们往往是寻找捕获样本量较少的类的能力和将样本量较多的类判错后需要付出的成本之间的平衡。也就是说,如果一个模型在能够尽量捕获样本量较少的类,同时还能够尽量对样本量较多的类做出正确判断,我们就说这个模型已经非常优秀了。为了评估这样的能力,我们将引入新的模型评估指标——混淆矩阵。
二、混淆矩阵
混淆矩阵是二分类问题的衡量指标,在样本类别不均衡时可以达到很好的效果。在混淆矩阵中,我们将样本量较少的类认为是正例,样本量较多的类认为是负例。在决策树、随机森林这些分类算法里,样本量较少的类用1表示,样本量较多的类用0表示。在SVM(支持向量机)里,样本量较少的类用1表示,而样本量较多的类用-1表示。普通的混淆矩阵,一般使用{0,1}来表示。下面我们用一种简化的方式来显示标准二分类的混淆矩阵。
其中,行代表实际情况,列代表预测情况,positive表示阳性,即为真;negative则表示阴性,即为假。因此矩阵中四个元素分别表示:
(1)TP(True Positive):真实为1,预测也为1
(2)FN(False Negative):真实为1,预测为0
(3)FP(False Positive):真实为0,预测为1
(4)TN(True Negative):真实为0,预测也为0
基于混淆矩阵,我们有一系列不同的模型评估指标,这些评估指标的范围都在[0,1]之间,对于任何模型,我们都希望最大限度的将真实值预测正确,也就是说,以11和00为分子的指标都是越接近1越好,以01和10为分子的指标都是越接近0越好。