机器学习实战(六)模型评价标准机器学习实战(六)模型评价标准
前言前言
本文内容大部分来自于如下两个博客:
http://blog.csdn.net/dinosoft/article/details/43114935
http://my.oschina.net/liangtee/blog/340317
引子引子
假设有下面两个分类器,哪个好?(样本中有A类样本90个,B 类样本10个。)
、、 A类样本类样本 B类样本类样本 分类精度分类精度
分类器C1 A*90(100%) A*10(0%) 90%
分类器C2
A*70 + B*20
(78%)
A*5 + B*5
(50%)
75%
分类器C1把所有的测试样本都分成了A类,分类器C2把A类的90个样本分对了70个,B类的10个样本分对了5个。
则C1的分类精度为 90%,C2的分类精度为75%,但直觉上,我们感觉C2更有用些。但是依照正确率来衡量的话,那么肯定C1的效果好一
点。那么这和我们认为的是不一致的。也就是说,有些时候,仅仅依靠正确率是不妥当的。
我们还需要一个评价指标,能客观反映对正样本、负样本综合预测的能力,还要考虑消除样本倾斜的影响(其实就是归一化之类的思想,
实际中很重要,比如pv总是远远大于click),这就是auc指标能解决的问题。
机器学习实践中分类器常用的评价指标就是auc,不想搞懂,简单用的话,记住一句话就行
auc取值范围[0.5,1],越大表示越好,小于0.5的把结果取反就行。
啥是啥是auc
roc曲线下的面积就是auc,所以要先搞清楚roc。
先看二分类问题,预测值跟实际值有4种组合情况,见下面的列联表