1. 分类模型评判指标: Precision、Recall 和 F1Score
对于分类而言,最简单也是最常见的验证指标:
- 精准率( Precision)
- 召回率( Recall),
- 为了综合这两个指标并得出量化结果,又发明了 F1Score。
对一个分类模型而言,给它一个输入,它就会输出一个标签,这个标签就是它预测的当前输入的类别。
假设数据 data1
被模型预测的类别是 Class_A
。那么,对于 data1
就有两种可能性: data1
本来就是 Class_A
(预测正确), data1
本来不是 Class_A
(预测错误)。
当一个测试集全部被预测完之后,相对于 Class_A
,会有一些实际是 Class_A
的数据被预测为其他类,也会有一些其实不是 Class_A
的,被预测成 Class_A
,这样的话就导致了下面这个结果:
-
精准率:
Precision=TP/(TP+FP)
,即在所有被预测为Class_A
的测试数据中,预测正确的比率。 -
召回率:
Recall=TP/(TP+FN)
,即在所有实际为Class_A
的测试数据中,预测正确的比率。 -
F1Score = 2*(Precision * Recall)/(Precision + Recall)
显然上面三个值都是越大越好,但往往在实际当中 P 和 R 是矛盾的,很难保证双高。
此处需要注意, P
、 R
、 F1Score
在分类问题中都是对某一个类而言的。
也就是说假设这个模型总共可以分 10 个类,那么对于每一个类都有一套独立的 P
、 R
、 F1Score
的值。衡量模型整体质量,要综合看所有 10 套指标,而不是只看一套。