一 、二分类评估
1.混淆矩阵 (ConfusionMatrix)
TP:1的预测为1 (正确的积极) 正确判断
FP:0预测为1 (错误的积极) 错误判断
FN:1预测为0 (正确的消极) 漏判断的
TN:0预测为0 (错误的消极) 成功未判断的
准确率:(accuracy):预测对的值占预测总的概率 (PR) 精准率:(precision)=TP/(TP+FP)----- 目标指标预测正确的的概率(预测股票的涨/跌)precision_score
召回率(覆盖率): (recall)=TP/ (TP+FN) ------找到预测目标指标的概率(找病人)recall_score
2.F1-score
召回率和精确率之间往往存在此消彼长的关系,当模型能找出更多的正样本时,往往也会导致将更多的负样本分类为正样本,即recall高时,precision往往较低,而precision高时,recall往往较低。为了在这两个指标之间取得平衡,发明了F1指标,它是上述两者的调和平均数。
F1-Score(平衡精准率和召回率) = 2*Precision*Recall/(Precision+Recall)
precision和recall相互平衡
决策边界--阈值:threshold
score:分数值
阈值 (threshold) :进行判断区分的值
循环获取每个threshold对应的精确率 (precisions) 和召回率(recalls)的值
3.RP曲线(precision/recall) 曲线函数:
precision_recall_curve
获取每个阈值对应的精确率和召回率的值
X轴-精准率:(precision)=TP/(TP+FP)----- 目标指标预测正确的的概率(预测股票的涨 跌)
Y轴-召回率(recall): =TP/ (TP+FN) ------找到预测目标指标的概率(找病人)
4.ROC曲线 ( TPR和FPR之间的关系)
ROC曲线/AUC(Area Under the Curve,曲线下面积)
ROC曲线(receiver operating characteristic curve), 是反映敏感性和特异性连续变量的综合指标,曲线下面积越大,诊断准确性越高。
横坐标:1-Specificity,伪正类率(False positive rate,
FPR),预测为正但实际为负的样本占所有负例样本的比例;
FPR=FP/(TN+FP)预测错了占不是目标值的比例 (找非目标值为目标值的概率) X轴
纵坐标:Sensitivity,真正类率(True positive rate,
TPR),预测为正且实际为正的样本占所有正例样本的比例。
TPR=TP/(TP+FN)预测对的占目标值的比例 (召回率recall:找到目标值的概率) Y轴
AUC ( ROC曲线的面积:最大为1) :面积越大越好
应用场合:比较两个模型的优劣
P/R和ROC是两个不同的评价指标和计算方式, 一般情况下, 检索用前者, 分类、识别等用后者。
二、 多分类评估
多分类问题的所有指标基本上都来自于二分类指标,但是要对所有类别进行平均。多分类的精度被定义为正确分类的样本所占的比例。
同样,如果类别是不平衡的,精度并不是很好的评估度量。除了精度,常用的工具有混淆矩阵和分类报告。
对于多分类问题中的不平衡数据集,最常用的指标就是多分类版本的f- 分数。多分类f- 分数背后的想法是,对每个类别计算一个二分类f- 分数,其中该类别是正类,其他所有类别组成反类。然后,使用以下策略之一对这些按类别f- 分数进行平均。
对于多分类模型的评价方法,通常是先将其转换为多个二分类模型,分别对其进行指标计算,然后使用一些规则来把这些指标汇总起来。
比如一个多分类模型的样本标签有A、B、C三类,则先把它看作三个二分类器,分类器1的标签为A,非A;分类器2的标签为B,非B;分类器3的标签为C,非C。对每个二分类器的评估我们已经知道了,但要评估分类器的总体功能,就需要考虑三个类别的综合预测性能。
下面有三种常用的汇总准则:
1.“宏”(macro)平均
Macro-average方法,对各个二分类器的评估指标求平均。该方法受样本量小的类别影响大。
该方法最简单,直接将不同类别的评估指标(Precision/ Recall/ F1-score)加起来求平均,给所有类别相同的权重。该方法能够平等看待每个类别,但是它的值会受稀有类别影响。
2.“加权”(weighted)平均
以每个类别的支持作为权重来计算按类别f- 分数的平均值。分类报告中给出的就是这个值。
Weighted-average方法,对各个二分类器的评估指标求加权平均,权重为该类别在总样本中的占比。该方法受样本量大的类别影响大。
该方法给不同类别不同权重(权重根据该类别的真实分布比例确定),每个类别乘权重后再进行相加。该方法考虑了类别不平衡情况,它的值更容易受到常见类(majority class)的影响
3.“微”(micro)平均:
计算所有类别中假正例、假反例和真正例的总数,然后利用这些计数来计算准确率、召回率和f- 分数。
Micro-average方法,把每个类别的TP, FP, FN先相加之后,在根据二分类的公式进行计算。
该方法把每个类别的TP, FP, FN先相加之后,在根据二分类的公式进行计算。
例:
实际值 (0-9)
预测值 (0-9)
十分类混淆矩阵:
每个实际值对应预测值的个数 (对角线为预测值=实际值: 即预测正确)
评估 参数:
每一行的预测错误占该行总预测数的比例 (err_matrix)
结论: 将1预测为9, 将8预测为1的比率大