分类任务

错误率与准确率

错误率是分类错误的样本占样本总数的比例。准确率等于1减去错误率。

查全率,查准率

首先说一下混淆矩阵

真实情况
预测结果
正例
反例
正例
TP(真正例) FN(假反例)
反例
FP(假正例) TN(真反例)

TP:系统预测为真,实际情况也是真,系统预测正确

FN:系统预测为假,实际上为真的样本,系统预测错误

FP:系统预测为真,然而实际为假的样本,系统预测错误

TN:系统预测为假,实际也为假,系统预测正确

怎么理解四个指标的意思呢:以FN为例,F代表假,N代表反例,假反例(假的反例 -> 预测是反例但却是假的 -> 实际是正例)

由此可以给出基于这四个指标的准确率(accuracy)计算公式
acc=TP+TNTP+TN+FN+FP acc = \frac{TP+TN}{TP+TN+FN+FP}

如果测试集中正反样本的比例不均衡,准确率就很难客观衡量分类器的好坏。可以使用查准率(精度, Precision)和查全率(召回率, recall),计算公式分别是:
Precision=TPTP+FP Precision = \frac{TP}{TP+FP}

Recall=TPTP+FN Recall = \frac{TP}{TP+FN}

理解这两个指标的意思后,很容易发现这两个指标是矛盾的,即查准率高了,查全率往往偏低;查全率高了,查准率往往偏低。

P-R曲线,F1

根据学习的预测结果对样本进行排序,排在最前的是学习器认为“最可能”是正例的样本,最后的是“最可能”是反例的样本。从前往后逐个把样本作为正例进行预测,每次可以计算出当前的查全率和查准率。以查准率为纵轴,查全率为横轴作图,就得到P-R曲线。

性能度量--分类任务
从P-R曲线图中可以认为一条曲线将另一条曲线完全包住时,可断言前者的性能优于后者。

**平衡点(BEP)**是查全率等于查准率时的取值。

F1

是基于查准率和查全率的调和平均
1F1=12(1P+1R) \frac{1}{F1} = \frac{1}{2}*(\frac{1}{P} + \frac{1}{R})

F1=2PRP+R F1 = \frac{2*P*R}{P+R}

F1实际是查准率和查全率相同权重情况下的F-score
F=(1+β2)PR(β2P)+R F = \frac{(1+\beta ^2)*P*R}{(\beta^2*P)+R}

ROC与AUC

很多学习器为测试样本产生一个实值或概率预测,然后将这个预测值与一个分类阈值进行比较,若大于阈值则分为正类,否则为反类。将这些值排序,以某个“截断点”将样本分成两个部分,前一部分作为正例,后一部分作为反例。

ROC曲线类似P-R曲线,但是以“真正例率(TPR)”作为纵轴,“假正例率(FPR)”作为横轴,定义是
TPR=TPTP+FN TPR = \frac{TP}{TP+FN}

FPR=FPTN+FP FPR = \frac{FP}{TN+FP}

AUC是ROC曲线下的面积。AUC与排序损失的和为1,所以AUC越大,损失也就越小。一般认为AUC越大,分类效果越好。

相关文章: