ROC曲线近似下的面积

数据挖掘 机器学习 分类 逻辑回归
2022-03-10 07:31:02

我想在二元分类的背景下计算逻辑回归模型的 ROC 曲线下面积。为此,我计算了阈值列表,例如 0.1 0.2 ... 0.9,TPR 和 FPR。我有这样

 (TPR_threshold1, ... TPR_thresholdN)
 (FPR_threshold1, ... FPR_thresholdN)

我能做吗

TPR_threshold1*FPR_threshold1 + ... + TPR_thresholdN*FPR_thresholdN 

为了计算 roc 曲线下的面积,还是我需要一些更精细的数学建模?

非常感谢!

1个回答

阈值无关紧要;重要的是这些阈值处的(FPR,TRP)值,因为它们是曲线上的点。按 FPR 升序对它们进行排序。为此,您需要在列表中包含点 (0,0) 和 (1,1),对应于阈值 1 和 0。

您可以使用梯形近似,因为每对连续的点都定义了曲线下面积的梯形。您只需将这些区域相加即可。

让我们取两个连续的点(FPR1,TPR1)和(FPR2,TPR2)。面积为 (FPR2 - FPR1) * (TPR1 + TPR2) / 2。只需将所有连续点对相加即可。

当然,大多数库都可以根据这个输入为你计算这个,比如 scikit-learn。