算法模型的效果是通过什么指标来进行衡量的呢?针对不同类型的模型有不同的考量指标,本文主要针对分类模型的考量指标进行集中分析,一般情况下,要知道一个分类模型的性能,主要通过查看AUC与F1 score即可知道模型的性能,但是在实际应用中还是要根据不同的应用场景来针对性的对一部分参数进行调整,比如:用户召回与用户画像,这是两个不同的应用场景,但是在这两个场景下,需要考量的指标都有不同的侧重,用户召回强调召回率,在保证召回率的前提下精确率最优;用户画像强调精确率,在保证精确率的前提下,召回率最优,所以我们要因材施教、因地适宜。
分类模型衡量指标:
1.混淆矩阵:
正样本(Positive) | 负样本(Negatibe) |
---|---|
分类正确正样本(True Positive) | 分类正确负样本(True Negatibe) |
分类错误正样本(False Positive) | 分类正确负样本(False Negatibe) |
2.准确率:分类正确样本在所有样本中的占比
\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad
A
c
c
u
r
a
c
y
=
T
P
+
T
N
T
P
+
T
N
+
F
P
+
F
N
Accuracy = \frac{TP+TN}{TP+TN+FP+FN}
Accuracy=TP+TN+FP+FNTP+TN
3.精确率:分类结果正样本中有多少样本原为正样本,分类结果也为正样本§,其中分子为预测正确的正样本数,分母为预测为正样本的总数(预测正确的正样本+预测错误的正样本)
\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad
P
r
e
c
i
s
i
o
n
=
T
P
T
P
+
F
P
Precision = \frac{TP}{TP+FP}
Precision=TP+FPTP
4.召回率:在样本的角度进行考量,对测试集样本中的正负样本分别有多少被正确的预测,即样本中的正样本在分类结果中被分类为正样本,其中分子为预测正确的正样本数,分母为测试集中正样本的总数(预测正确的正样本数+预测错误的负样本数)
\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad
R
e
c
a
l
l
=
T
P
T
P
+
F
N
Recall = \frac{TP}{TP+FN}
Recall=TP+FNTP
5.F1 Score:精确率和召回率的调和平均
\quad\quad\quad\quad\quad\quad\quad
2
F
1
=
1
P
r
e
c
i
s
i
o
n
+
1
R
e
c
a
l
l
\frac{2}{F_{1}} = \frac{1}{Precision}+ \frac{1}{Recall}
F12=Precision1+Recall1 ===>
F
1
=
2
∗
P
r
e
c
i
s
i
o
n
∗
R
e
c
a
l
l
P
r
e
c
i
s
i
o
n
+
R
e
c
a
l
l
=
2
∗
T
P
2
∗
T
P
+
F
P
+
T
N
{F_{1}} = \frac{2*Precision*Recall}{Precision+Recall}= \frac{2*TP}{2*TP+FP+TN}
F1=Precision+Recall2∗Precision∗Recall=2∗TP+FP+TN2∗TP
ROC(Receiver Operating Characteristic)曲线和AUC常被用来评价一个二值分类器(binary classifier)的优劣
6.ROC曲线:ROC曲线横坐标是FPR(False Positive Rate),纵坐标是TPR(True Positive Rate)
其中:
\quad
F
P
R
=
F
P
F
P
+
T
N
FPR = \frac{FP}{FP+TN}
FPR=FP+TNFP
\quad\quad\quad
T
P
R
=
T
P
T
P
+
F
N
TPR = \frac{TP}{TP+FN}
TPR=TP+FNTP
我们可以知道横坐标FPR、纵坐标TPR是在(0,1)的范围内,所以ROC曲线的横纵坐标都在(0,1)的范围内,进而ROC曲线在坐标轴上是在(0,1)、(1,1)、(1,0)、(0,0)四个点所定义的正方形内,很明显,这四个点分别代表着ROC曲线的极限情况,下面我们对ROC曲线进行分析:
首先从第一个点(0,1),此时FPR=0,TPR=1,即正样本错误数为0,正样本的精确率为1,此时为模型的最优效果。
7.AUC:AUC是ROC曲线下方面积值,由于ROC的横纵坐标的范围均在(0,1)之间,而模型的效果达到一定水平后,AUC的范围大概确定在(0.5,1)之间,由于ROC曲线无法标量模型的效果,所以采用计算ROC面积的方式来评价一个模型效果,AUC越大,模型分类效果越好。
AUC对于模型评价的指标意义是模型预测正样本为正样本的概率大于预测负样本为正样本的概率的概率值,这句话可以结合ROC的概念进行理解,在ROC曲线中,横纵坐标均为正样本的预测比率。
8.KS值:通过调整阈值可以得到多个(FPR,TPR)点,描点画图时把阈值作为横轴,FPR描点形成一条曲线,TPR描点形成一条曲线,这个与ROC曲线比较相似,在曲线上找到Max(TPR-FPR),这个值就是KS值,KS值越大,表示模型将正负样本能够区分开的程度越大,但是分隔并不一定表示正确。
9.PR图:P-R曲线的P就是准确率(Precision),R就是召回率(Recall)。用P作为横坐标,R作为纵坐标,就可以画出P-R曲线。对于分类器,通过调整分类阈值,可以得到不同的P-R值,从而可以得到一条曲线(纵坐标为P,横坐标为R)。随着分类阈值从大到小变化,Precision减小,Recall增加。比较两个分类器好坏时,显然是查得又准又全的比较好,也就是的PR曲线越往坐标(1,1)的位置靠近越好。
下面分别针对这些指标给出一些实例:
1.混淆矩阵:
2.统计指标:准确率、精确率、召回率、F1指标
3.ROC曲线
4.KS值
5.PR曲线