模型评估【PR|ROC|AUC】

这里主要讲的是对分类模型的评估。

1、准确率(Accuracy)

    准确率的定义是:【分类正确的样本】 / 【总样本个数】,其中分类正确的样本是不分正负样本的

    优点:简单粗暴

    缺点:当正负样本分布不均衡的情况(假设一种极端情况,正样本1个,负样本99个),此时即使一个比较差的模型(只会将所用的样本预测成负样本),那它也有99%的准确率。

总结一下就是 当样本分布不均匀,该指标意义不大

    改进方案: 1、在不同样本分类下求它的准确率,然后取平均值

                    2、选取其他评价指标

2、PR曲线

    Precision(精准率):【分类正确的正样本个数】/【被预测为正样本的个数】

    Recall(召回率):【分类正确的正样本个数】/【真实中正样本的个数】

    Precision 与 Recall是一对既矛盾又统一的变量

    矛盾是指:如果想要高的 精准率,也就要求模型有一些挑剔,对于一些不太确定的是否为正样本的,不将它预测成正样本,可以理解为模型变得“保守”了,所以【被预测为正样本的个数】变小,【分类正确的正样本个数】变小,但是他们比值是变大的,可以这么理解假设有10个样本不太确定是否是正样本,在挑剔之前,就把这个不确定的全部预测成正样本,假设在这10个中,只有4个分类正确,在挑剔之后,分子-4,分母-10,也就是不确定中可以会预测正确也可能预测错误,而追求高的精准率,就直接将这些不确定的抛弃,而此时【分类正确的正样本个数】是变小的,所以召回率变小。

    统一是指:个人感觉精准率和召回率越高都会反映模型效果会比较好

    PR曲线:是以Precision为纵坐标,Recall为横坐标的描述一个模型在不同阈值(划分正负样本的标准)下的曲线图

    绘制过程:与ROC绘制过程相同

    曲线意义:当R接近0,即在原点附近时,模型变得非常保守,十分把握才预测成正样本,也就是阈值变得很大,此时正确的可能性将也很大,即精确率很高,随着R的变大,精确率将变小。

    那如何通过PR曲线衡量不同模型的好坏呢?

    可以通过曲线下的面积,面积越大,模型越好

    缺点

    受样本影响比较大,假设负样本扩大100倍,召回率不变,精准率的分母变大了,一些负样本被预测成正样本,也就是在召回率固定的情况下,精准率变小了。

 

3、ROC曲线

    真阳性 (TPR): TP / P  【分类正确的正样本个数TP】/【真实中正样本的个数P】 等于 召回率

    伪阳性(FPR): FP / N 【在负样本中被预测成正样本的个数 FP】 / 【真实中负样本的个数N】

    ROC曲线是以真阳性为纵坐标,伪阳性为横坐标描述一个模型在不同阈值(划分正负样本的标准)下的曲线图

    绘制过程:

  • 对所有样本求预测为正样本的概率,并根据概率从大到小排序
  • 分别以每一个概率作为一个划分正负样本的阈值,对于第一个就是将最大概率作为划分阈值,此时正样本个数为0(y轴为0),全部为负样本(横轴也为0),不断改变降低阈值,就会得到在该阈值下的点
  • 不同阈值下的点对构成的曲线就是roc曲线

    另外还有一个简单的绘制方法

    X轴以 1/N 为单位,Y轴以 1/P为单位,遍历所有的样本,如果当前样本为正的话,向上移动一个单位,样本为负向右移动一个单位,最终的结果就是由左下方不断往右上方移动

    每一次的移动其实都是一次改变判断正负样本阈值的过程,对于 X轴和Y轴的分母不会改变,当样本是正,阈值为大于等于该样本概率判断为正样本,所以Y轴 + 1,样本为负,表示该样本会判断成正样本,所以X轴 + 1。

    优点:

     ROC曲线不会受样本影响,相对稳定。假设负样本扩大100倍,对于X轴,分子分母等概率变化,总体结果是不变的,对于Y轴也是不变的

4、AUC (Area under cover)

    AUC是ROC曲线的积分,表示模型分类效果,值越大分类效果越好

 

    一句话概括AUC就是:

    对于两个随机正负样本,将正样本预测成正样本的概率大于将负样本预测成正样本的概率。

    AUC深层解读:https://www.zhihu.com/question/39840928?from=profile_question_card

    AUC计算方法:https://blog.csdn.net/qq_22238533/article/details/78666436

 

posted @ 2018-10-19 22:34  zhaop  阅读(955)  评论(0编辑  收藏  举报