机器学习问题之中,通常需要建立模型来解决具体问题,但对于模型的好坏,也就是模型的泛化能力,如何进行评估呢?
很简单,我们可以定一些评价指标,来度量模型的优劣。比如准确率、精确率、召回率、F1值、ROC、AUC等指标,但是你清楚这些指标的具体含义吗?下面我们一起来看看吧。
1.混淆矩阵
介绍各个指标之前,我们先来了解一下混淆矩阵。假如现在有一个二分类问题,那么预测结果和实际结果两两结合会出现如下四种情况。
由于用数字1、0表示不太方便阅读,我们转换一下,用T(True)代表正确、F(False)代表错误、P(Positive)代表1、N(Negative)代表0。先看预测结果(P|N),然后再针对实际结果对比预测结果,给出判断结果(T|F)。按照上面逻辑,重新分配后为
TP、FP、FN、TN可以理解为
- TP:预测为1,实际为1,预测正确。
- FP:预测为1,实际为0,预测错误。
- FN:预测为0,实际为1,预测错误。
- TN:预测为0,实际为0,预测正确。
2.准确率
首先给出准确率(Accuracy) 的定义,即预测正确的结果占总样本的百分比,表达式为
准 确 率 = T P + T N T P + T N + F P + F N 准确率=\frac{TP+TN}{TP+TN+FP+FN} 准确率=TP+TN+