AUC 到底代表什么呢,咱们从另外一个角度解释 AUC,咱们先看看一个 auc 曲线
蓝色曲线下的面积 (我的模型的 AUC) 比红线下的面积 (实践随机模型的 AUC) 大得多,所以我的模型肯定更好。
我的模型比随机模型好多少呢? 实践随机模型只是对角线,这条对角线下的面积是 0.5,咱们的模型的 AUC 是 0.75 那么这个 0.75 的 AUC 值到底代表什么?
首先,咱们要理解 AUC 是为一个能够给出概率分数的模型定义的。另外一点是,它是为二元分类工作定义的。然而也能够推广到多类分类问题。
咱们要牢记以上这两点,这样才能够持续解释这个问题。
二元分类模型是什么样子的?
简略地说,给定一个数据点,比方 x,它能够有许多特色,任何这样的数据点的类只能有两种可能性,要么是 1,要么是 0。而模型个别都会预测样本为 1 的概率(0- 1 之间的一个数值)。
也就是说,它不是间接断言类,而是预测一个类的概率。
咱们失去了这个分数,能够把它看做是一个信念的衡量标准。如果你把钱押在两匹马上,x1 和 x2。你记录下它们的特色,而后通过分类器。第一个赢的概率是 0.90 第二个赢的概率是 0.85。这两匹马都有相当不错的胜率,尽管这两个马的分类都是“win”(因为概率都超过了 50%)。然而如果只有在一匹马上下注的钱,那么依据概率你会抉择哪匹马呢?
在下面的探讨中,咱们疏忽了一个假如,这正是直观了解 AUC 的最根本方面。我如何判断这两匹马都属于这个类别呢? 因为他们获胜的概率都很高(>0.5)。然而有多高呢?
为什么把这两匹马都归为类别获胜仿佛是一件不言而喻的事件?
因为在 0 到 1 的范畴内(这是任何概率的范畴),大于 0.5 或 0.55 的值应该被视为高值。然而,如果你真的要下注,而一匹马的概率是 0.60,你会下注吗? 我不这么认为! 也就是说,你不关怀 0.5 的门槛,你有一个更高的门槛因为你是在用真的钱在冒险,所以你可能会想回绝 0.6 的那匹马是理智的。
如果把阈值进步到 0.95 下面提到的马 x1 和 x2 都会被回绝。然而如果你的门槛是 0.88,哪你会抉择 x2 而回绝 x1。
也就是说,当波及概率评分时分类后果将取决于 0 - 1 范畴内阈值的抉择。
这里咱们首先假如有一个上帝模型,它会晓得哪匹马会赢,所以它会输入获胜的概率分数,赢的马的概率分数为 0.999,其余所有马的概率分数为 0.0001。另外一个假如你是一个“傻瓜”,你会置信即便是一匹赢的概率等于 0.1 的马也会赢。
当咱们的模型给出胜出的概率为 0.25 时,你必定间接去柜台把钱押在那匹马身上(0.25>0.1)。然而如果你有上帝模型,它会间接输入 0.0001, 而你的阈值是 0.1,因而你也不会在那匹马上下注,所以即便你是“傻瓜”,但上帝模型很好也可能给你正确的答案。也就是说无论你的阈值是多少,如果这个模型都很好,你就不会有损失。
因而,无论你的阈值是 0.9 还是 0.95,上帝模型都会输入获胜马的概率分数为 0.999,这将高于做出决定而设置的任何阈值。因而你将永远赢钱,永远不会赔钱。
对于上帝模型来说,True-Positive 率总是 1,False-Positive 率总是 0。上帝模型的 ROC 曲线能够说是不存在的,因为在绘制它时,你会发现只有一个点,FP 等于 0,TP 等于 1。
TPR 和 FPR
让咱们持续说说 TPR 和 FPR。
TPR: 在所有正例中,有多少被预测为正例的。
对于咱们说的赛马来说,TPR 是假如钱被押注的状况下的赢钱的概率。而 FPR 是在赌钱的状况下赔钱的比率。所以,咱们心愿 TPR 大于 FPR。
FPR: 在所有真正的负例中,有多少被预测为正例的
假如你的阈值太低,比方 0.05。模型给出的任何概率值都可能高于阈值,因而每个实例都被预测为正例。在这种状况下,TPR 和 FPR 都是 1。相似的当阈值过高 (如 0.99) 时,你的模型给出的任何概率分数都可能低于阈值,因而每个实例都被预测为负例。在这种状况下,TPR 和 FPR 都等于 0。
所以如果绘制这两个点,其中 FPR =TPR = 1 和 FPR =TPR =0,你会发现这两个点在对角线上。留神对角线的方程是 FPR = TPR。他的含意是,如果模型对不同的截止点体现出这样的行为,咱们能够保障不会因为损失而对消你所赚的钱。
为了失去一个比随机模型更好、更靠近上帝模型的模型,咱们心愿 TPR 在大多数截断点上大于 FPR。
为什么呢? 因为 TPR 是可能获胜的总数中的胜率,而 FPR 给出了下注的输钱率。对角线上方的区域是 TPR 大于 FPR 的区域。曲线越向上挪动越好。
最初就是要量化这个概念,曲线下的面积是有意义的。曲线下的面积越大,曲线向上挪动的幅度就越大。所以当看到 TPR 和 FPR 之间的曲线时,
你会留神到曲线位于 TPR > FPR 的区域。通过 AUC,你就晓得它有多好。
为什么要在 TPR 和 FPR 之间画一条曲线呢?
咱们持续用赛马的例子中给出 TPR 和 FPR 的含意来解释这一点
橙色的 ROC 曲线阐明了什么? 这条曲线通过绘制 TPR 与 FPR 在不同截点处的曲线而存在。这条曲线表明无论截点是多少,TPR 总是等于 1。
从这一点登程,截点用于查看模型的判断品质有多强壮。也就是说即便有不同的截点,模型给出的 TPR 值总会高于 FPR 值。具体高出多少呢?
AUC 就给出的是给出“多高”的概念。因为咱们感兴趣的是晓得模型有多好? 它能更好地区分两个类别(赢 / 输),咱们赌赢钱越多,赌输钱越少的可能性就越大。
https://avoid.overfit.cn/post/0c5dffb7414141a98c4b1ffb5b5f6c82
作者:Number Theory