从定义上来讲,ROC(Receiver Operator Characteristic)是
以TPR = TP / (TP + FN) = Recall为x轴,FPR = FP / (FP + TN)为y轴做的图相。
翻译成中文来说就是假设我们要从一堆图片中找到5这个数字的图片. TPR就是正确识别出5的图片数量除以所有5的数量.FPR就是被误以为是5但其实并不是5的图片的数量除以总的不是5的图片的数量.
那么一个典型的ROC曲线就是
为了更好的理解这条曲线,我们考虑极端情况,当我们的系统是完美的时候,我们识别出来了所有的5和非5,那么在这种情况下FPR=0 TPR=1
但是当我们的模型就是垃圾,他把所有的图片都识别为5时TPR=1,FPR=1.所以一个完美的模型的ROC应该是
注意就算是完美的模型如果我们持续降低我们判断的阈值也会使FPR升高.所以一个系统的好坏应该看的是ROC曲线的左上角有多块到达一个比较高的值,换句话说就是ROC曲线一开始的斜率高的模型是好模型.
机器学习实战(基于scikit-learn和TensorFlow)学习心得(15)--Receiver Operator Characteristic
最新推荐文章于 2022-04-24 16:57:22 发布