2019-05-30(模型评估方法)

参考原文

混淆矩阵

实际为正例 实际为反例
预测为正例 TP FP
预测为反例 FN TN

评估指标

基本评估指标

召回率(recall)\灵敏度(sensible):TP / (TP + FN)
精确率(precise):TP / (TP + FP)
准确率(accuracy):(TP + TN) / (TP + FP + TN + FN)
F1值:2pr / (p + r), 精确率和召回率的调和均值,是它们的综合评价指标。
:F1的变体

其他评估指标

  • ROC:在评估之前我们需要将所有可以为阈值的概率作为阈值(将模型的预测结果排序,依次以每个值为阈值),每个阈值分类结果都可以得到一个混淆矩阵,在每个混淆矩阵中计算下面两个量:
    ROC曲线就是以FPR为x轴,TPR为y轴生成的曲线。

    • TPR:TP / (TP + FN),真正例率,即对混淆矩阵中第一列的分析。
    • FPR:FP / (FP + TN),假正例率,即对混淆矩阵中第二列的分析。
  • PRC:总的来说PRC和ROC是类似的,PRC是P(precise)和R(recall)的曲线(ROC为TPR和FPR的曲线)

  • AUC:AUC为ROC曲线下面面积的曲线
    当AUC曲线为0.5时,表示模型的预测效果和随机猜测没有区别,当AUC小于0.5时我们需要检查是否将标签标反了。

  • Gini系数:2 * AUC - 1,它的几何意义是:中线和ROC曲线围成的图形的面积和中线以上部分面积的比例(中线:ROC坐标系中,x轴、y轴、x = 1、y = 1围成的正方形的对角线)

  • KS(Kolmogorov-Smirnov):max(TPR - FPR),即为TPR和FPR的最大差值,KS可以反应模型的最优分类效果,KS值下的阈值一般可以作为模型分类的最优阈值。阈值的选取还需要考虑应用场景,对于TPR敏感的应用可以适当增加阈值来获得更大的召回率。

讨论

因为TPR = recall 所以ROC的纵坐标和PRC的横坐标相等。
对比TPR、FPR、Precision、Recall,可以发现,TPR、Recall的分母是正例,FPR的分母是反例,所以只要数据集确定了,这三个指标随分子增加单调递增的。Precision的分母是预测为正例的数目,这会随阈值的变化而变化,所以precision的变化更加不确定(TP 和 FP的值受到样本结构的制约,当样本结构不平衡时它们中的某个值会很大而另一个会很小),所以和PRC相比,SOC会稳定得多,征服样本都足够的情况下,SOC曲线足够反应模型的判断能力。
SOC和PRC都可以对模型的性能有一定的说明,所以评估模型时可以把他们都画出来。

模型选择方法

留出法、交叉验证发、自助法(bootstrap)
数据集小,不易划分训练集和测试集时可以采用自助法进行划分。
数据集小,但可以有效划分时用留出法进行划分
数据集大时交叉验证比较好

猜你喜欢

转载自blog.csdn.net/weixin_33924312/article/details/91034191