在机器学习、深度学习等完成建模后,需要对模型的效果进行评价。
目前在业内最常用的评价指标有准确率(Accuracy)、精准率(Precision)、召回率(Recall)及F1-Score等。本文将简单介绍这几个概念,也是记录下来便于自己理解。
混淆矩阵
在介绍这些概念之前,我们需要先了解“混淆矩阵”及其相关指标。
Positive | Negative | |
---|---|---|
True | True Positive(TP) | True Negative(TN) |
False | False Positive(FP) | False Negative(FN) |
True Positive(真正,TP):将正类预测为正类数
True Negative(真负,TN):将负类预测为负类数
False Positive(假正,FP):将负类预测为正类数误报 (Type I error)
False Negative(假负,FN):将正类预测为负类数→漏报 (Type II error)
评价指标
准确率(Accuracy)
准确率(Accuracy)的计算公式为:
A
C
C
=
T
P
+
T
N
T
P
+
T
N
+
F
P
+
F
N
A C C=\frac{T P+T N}{T P+T N+F P+F N}
ACC=TP+TN+FP+FNTP+TN
准确率是指我们模型预测正确的结果所占的比例
错误率(Error rate)
错误率与准确率相反,是指模型预测错误的结果所占的比例。想要求得错误率,可以使用Error rate = 1 - accuracy
精准率(Precision)
精准率(Precision)定义如下 :
Precision
=
T
P
T
P
+
F
P
\text { Precision }=\frac{T P}{T P+F P}
Precision =TP+FPTP
精准率是指预测为正例的样本中,有多少是真正的正样本的数量。(即预测为对的样本中,有多少是真正预测正确的)
召回率(Recall)
召回率(Recall)定义如下:
Recall
=
T
P
T
P
+
F
N
\text { Recall }=\frac{T P}{T P+F N}
Recall =TP+FNTP
召回率是指在全部正例样本中,有多少正例样本被预测正确了。
F1-score
要综合准确率和召回率,所以提出了一个指标F1 score,其公式为:
F1
=
2
∗
P
∗
R
P
+
R
\text { F1 }=\frac{2 * P * R }{ P+R}
F1 =P+R2∗P∗R
F1 score综合了P和R的结果,当F1较高时能说明试验方法比较有效。
其他评价指标
计算速度:分类器训练和预测需要的时间;
鲁棒性:处理缺失值和异常值的能力;
可扩展性:处理大数据集的能力;
可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。
在一年之间看了很多东西,后续在回顾过程中发现忘记了很多,所以慢慢回忆一些东西并记录下来,给自己加深记忆,供自己以后参考。