怎么理解roc convex hull?

  统计/机器学习 监督式学习 模型验证    浏览次数: 331
1

怎么理解二元分类模型的roc convex hull?有人熟悉这个概念吗?

谢谢!


 

ljljlj   2018-03-10 22:45



   2个回答 
7

roc convex hull可以用来比较分类器。通常如果分类器输出的是概率,我们直接比较roc auc了。但是如果分类器返回的是标签,而不是概率,那么roc convex hull可以用来作为初步的判断。

首先要知道roc曲线的横坐标和纵坐标分别是FPR(False Positive Rate)和TPR(True Positive Rate)。

对于一个二元分类器A,如果它的FPR是0.2,它的TPR是0.7。在下图中用红点已经标出。

把A点和(0,0),(1,1)连起来,就会得到一个凸多边形(convex hull)。

现在又有另一个二元分类器B,它的FPR是0.5,它的TPR是0.9。也可以在图中标出。

A和B以及(0,0),(1,1)的连线依然是凸的。

现在又来了第三个分类器C,它的FPR是0.8,它的TPR是0.92。第三个分类器D,它的FPR是0.6,它的TPR是0.7。

发现C和D都在原来的convex hull内,如果非要把A,B,C,D连接起来我们发现,它也不会是凸的。

所以相对A和B,C和D是较差的分类器。至于A和B谁好,无法区分。

如果只有A,C,D三个分类器,D是较差的,而A和C则无法比较。

roc convex hull可以看作是一种“没有比较,就没有伤害”,“别人家孩子系列”。

------

roc convex hull的另一个作用是用来筛选operation point(也就是是0-1分类的阈值)。比如分类器返回的是概率,这个时候,这个分类器自己就对应了一个roc curve。注意,这个curve未必是convex的。选择operation point的时候,最好要选择在convex hull上的点。


曾经是科比   2018-03-30 10:19

谢谢大牛解释! - ljljlj   2018-04-01 12:33
1

搬运一下StackOverflow上的答案

这个答案的意思说roc convex hull可以帮你构造一个最优的分类器。

为什么是“最优”的呢?

因为你的分类器在roc坐标系中会有很多点,而这些点的连线未必是convex的。你画出这些点的convex hull,这时convex hull下的面积就最大化了,换句话说roc auc就被最大化了。答案里引用的那片论文说,你总是可以人为的进行一些组合,使得你的分类器达到最个最优。


岛歌   2018-05-01 11:35



  相关主题

证明LogLoss是凸函数   1回答

逻辑回归的Log Loss是凸函数吗?   1回答

凸优化中局部最优解就是全局最优解吗?   2回答

什么样的优化问题算是凸优化?   1回答

roc auc小于0.5是什么情况?   3回答

如何利用python画分类器的ROC曲线?   1回答

怎么直观理解ROC AUC的概率统计意义?   1回答

sklearn里计算roc_auc_score,报错ValueError: bad input shape   1回答

sklearn.metrics.auc里提到的梯形法则是什么意思?   2回答

两个凸函数相加,还是凸函数吗?   4回答

精度召回precision recall auc是什么?   1回答

凸优化中的仿射是什么意思   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!