Machine learning 为什么我们要在分类问题中最大化AUC?

Machine learning 为什么我们要在分类问题中最大化AUC?,machine-learning,statistics,mathematical-optimization,Machine Learning,Statistics,Mathematical Optimization,我想知道为什么我们的目标是最大限度地提高AUC,而最大限度地提高准确性会产生相同的结果 我认为,除了最大化准确性的主要目标外,AUC将自动变大。我想我们使用AUC是因为它解释了我们的方法能够很好地独立于阈值分离数据。 对于某些应用程序,我们不希望出现假阳性或假阴性。当我们使用准确度时,我们已经对分离数据的最佳阈值进行了先验分析,而不管其特异性和敏感性如何。 . 在二元分类中,准确度是某一阈值下单个模型的性能指标,AUC(ROC曲线下面积)是一系列阈值下一系列模型的性能指标 由于这个问题,我学到

我想知道为什么我们的目标是最大限度地提高AUC,而最大限度地提高准确性会产生相同的结果


我认为,除了最大化准确性的主要目标外,AUC将自动变大。

我想我们使用AUC是因为它解释了我们的方法能够很好地独立于阈值分离数据。 对于某些应用程序,我们不希望出现假阳性或假阴性。当我们使用准确度时,我们已经对分离数据的最佳阈值进行了先验分析,而不管其特异性和敏感性如何。
.

在二元分类中,准确度是某一阈值下单个模型的性能指标,AUC(ROC曲线下面积)是一系列阈值下一系列模型的性能指标

由于这个问题,我学到了很多关于AUC和准确性比较的知识。我不认为两者之间存在相关性,我认为这仍然是一个悬而未决的问题。在这个答案的末尾,我添加了一些我认为有用的链接


一种精度不高的场景:


示例问题

让我们考虑一个二进制分类问题,在这里你对模型的性能进行评估:<强> 100 < /强>样本(<强> 98 < /强>类<代码> 0 < /代码>和<强> 2 < /强>类<代码> 1 < /代码>)< < /P> 拿出你复杂的机器学习模型,用一个愚蠢的系统取代整个系统,不管它接收到什么输入,它总是输出

0
。 现在的准确度是多少

Accuracy = Correct predictions/Total predictions = 98/100 = 0.98
“始终
0
”系统的准确率达到了惊人的98%

现在,您将系统转换为癌症诊断系统,并开始对一组患者进行预测(
0
-无癌症,
1
-癌症)。假设有一些情况对应于类
1
,您仍然可以获得较高的精度

尽管精确度很高,但如果系统在分类
1
(识别癌症患者)方面做得不好,那它又有什么意义呢


这一观察结果表明,对于每种类型的机器学习问题,准确度并不是一个很好的评估指标。上述问题被称为不平衡阶级问题,这种性质的实际问题已经足够多了


至于准确度和AUC的比较,这里有一些我认为有用的链接


  • 如果我说“在同一问题上比较不同分类模型时考虑AUC的最大化,并且在一个特定分类模型中最大化AUC是不合乎逻辑的”,那么我说的对吗?对于单个模型来说,具有高AUC是有意义的。回想一下,我们可以得到的最佳ROC曲线是假阳性率为0的步长函数。这意味着什么?甚至是次优曲线(AUC>0.5)意味着什么?你会有很高的真阳性率,即使是那些会导致更高的假阳性率的阈值,这是很好的。