ps1:统计中,第一类错误:事实为真,被认为是假
第二类错误:事实为假,确认为是真
ps2:Roc曲线,曲线上每一个点对应一个模型,对于同一条曲线上,是指同一个算法中所有模型,不同曲线代表图通算法。
1 TP, TN, FP, FN的概念
图如下所示,里面绿色的半圆就是TP(True Positives), 红色的半圆就是FP(False Positives), 左边的灰色长方形(不包括绿色半圆),就是FN(False Negatives)。右边的 浅灰色长方形(不包括红色半圆),就是TN(True Negatives)。这个绿色和红色组成的圆内代表我们分类得到模型结果认为是正值的样本。
TP(true positives):是指预测认为是对的(positives),并且确实为对的(true)
FP(false positives):是指预测认为是对的(positives),但是实际上是错的(false)
FN(false negatives):是指预测认为是错的(negitives),并且确实为错的(false)
TN(true negatives):是指预测认为是错的(negatives),但是实际上是对的(true)
2.精确率(Precision), 召回率(Recall), 特异性(Specificity),F1值,TPR,FPR的概念
(1)精确率(Precision)的数学定义是:
P = TP/(TP+FP)
公式实际上是表示在预测过程中,预测为真并且预测对的概率,是绿色半圆除以红色绿色组成的圆.
(2)召回率(Recall)的数学定义是:
R = TP/(TP+FN)
公式实际上是表示在预测过程中,预测为真占所有真集的概率,是绿色半圆除以左边的长方形.
(3)特异性(Specificity)的数学定义是:
S = TN/(FP+TN)
公式实际上是表示在预测过程中,预测为假占所有假集的概率,是右边长方形去掉右边半圆占右边长方形的部分.
(4)F1值的数据定义是:
2/F1 = 1/P +1/R
F1值是精确率与召回率之间的调和均值
但是有时候我们对P和R的权重设定有所不同,致使我们的F1值不同:
Fa = (1+a*a)*P *R/(a*aP +R)
当a<1的时候,精确率的权重小,当a>1时候精确率权重大
(5)灵敏度(TPR)
TPR,即true positives rate,它数值上等于召回率.
(6)1-特异度(FPR)
FPR,即false positives rade, 他等于1-特异度,它等于FP/(FP+TN)
3.ROC曲线和PR曲线
ROC曲线(receiver operating characteristic curve,简称ROC曲线),以TPR为y轴,以FPR为x轴,我们就直接得到了RoC曲线。从FPR和TPR的定义可以理解,TPR越高,FPR越小,我们的模型和算法就越高效。也就是画出来的RoC曲线越靠近左上越好。如下图左图所示。从几何的角度讲,RoC曲线下方的面积越大越大,则模型越优。所以有时候我们用RoC曲线下的面积,即AUC(Area Under Curve)值来作为算法和模型好坏的标准。
以精确率(precision)为y轴,以召回率(recall)为x轴,我们就得到了PR曲线。仍然从精确率和召回率的定义可以理解,精确率越高,召回率越高,我们的模型和算法就越高效。也就是画出来的PR曲线越靠近右上越好。如上图右图所示。
使用RoC曲线和PR曲线,我们就能很方便的评估我们的模型的分类能力的优劣了。