- 有哪些常见的评价指标
精确度就是你猜的有多准,,召回率就是你把多少正确的找到了,分子都是 TP,也就是预测对的正样本。当我们把阈值定的很高时,此时精确率往往很高,但召回率一般很低。相反,当阈值很低时,召回率很高,但精确率很低
F1值:精确率和召回率的调和平均数,
P-R 曲线
ROC曲线:横轴为为 FPR,即 FP 占所有负样本的比例,纵轴为 TPR,即TP 占所有正样本的比例,ROC曲线下的面积为AUC,AUC表示随机抽取一个阳性样本和一个阴性样本,分类器正确判断阳性样本的值高于阴性样本的概率
灵敏度:TPR,识别出的特例占所有正例的比例
特异度:TNR,识别出的负例占所有负例的比例
F-score: 其中用来平衡精确率和召回率,如果取1,表示P和R一样重要,如果小于1,表示P比R重要,如果大于1,表示R比P重要。通常情况下,取1,即两个指标一样重要
正负样本比例的改变不会导致ROC曲线的明显变化,所以在正负样本不平衡的情况下一般用ROC值
- ROC 曲线相比 P-R 曲线有什么特点
相比 P-R 曲线,ROC 曲线在正负样本的分布发生变化时,ROC 曲线的形状能够基本保持不变,而 P-R 曲线的形状一般会发生较剧烈的变动。这个特点让 ROC 曲线能够尽量降低不同测试集带来的干扰。
ROC、AUC
(0,1)是一个完美的分类器,所有的样本都为负样本 (1,0)是一个糟糕的分类器,成功避开了所有正确答案 (0,0)将所有样本都预测为负样本 (1,1)将所有样本都分类为正样本,对角线上的点是一个随机猜测策略的分类器的结果
相比于准确率、召回率、F1等指标,AUC有一个独特的优势,就是不关注具体得分,只关注排序结果。这使得它特别适用于排序问题的效果评估,例如推荐排序的评估。
AUC有两种解释方法,一种是传统的“曲线下面积”解释,另一种是关于排序能力的解释。例如0.7的AUC,可以理解为给定一个正样本和一个负样本,在70%的情况下,模型对正样本的打分高于负样本的打分,只关心正负样本之间分数的高低,而具体的分值无关紧要
PR曲线会面临的问题是,当需要获得更高recall时,model需要输出更多的样本,precision可能会伴随出现下降/不变/升高,得到的曲线会出现浮动差异
相比于准确率、召回率、F1值等依赖于判决阈值的评估指标,AUC则没有这个问题
- ROC为什么不受正负样本比例影响
ROC的横坐标为FPR,纵坐标为TPR(也就是recall)
FPR = FP/所有负样本 TPR = TP/所有正样本 这两个值都只与类内分布有关,与类与类之间的大小关系无关
为什么AUC对正负样本比例不敏感,主要是AUC可以看做随机选取一对正负样本,其中正样本的得分高于负样本的概率
为什么AUC可以看作随机选取正负样本,正样本得分大于负样本的比例
- AUC如何计算
对一批已知正负的样本集合进行分类,按照预测概率从高到低排序,对于正样本中概率最高的,排序为rank1,比它概率小的有M-1个正样本(M为正样本个数),rank1-M个负样本。。。以此类推
总共有M*N个正负样本对,把所有正样本大于负样本的例子加上,得到公式:
化简之后得到
- 如果一个模型预测结果很好,但是 RMSE 却很高,可能是什么原因
很可能是存在非常严重的离群点。 如果认为离群点是噪声点,就要在数据预处理时把这些离群点滤掉。如果不认为是噪声点,就要提高模型的预测能力。或者是可以找一个更合适的指标来评价该模型。