gpt4 book ai didi

python - 手动计算 AUC

转载 作者:行者123 更新时间:2023-12-04 14:55:19 29 4
gpt4 key购买 nike

如何获得具有 fpr 和 tpr 的 AUC 值? Fpr 和 tpr 只是从这些公式中获得的 2 个浮点数:

my_fpr = fp / (fp + tn)
my_tpr = tp / (tp + fn)
my_roc_auc = auc(my_fpr, my_tpr)

我知道这不可能,因为 fpr 和 tpr 只是一些浮点数,它们需要是数组,但我不知道如何做到这一点。我也知道我可以这样计算 AUC:
y_predict_proba = model.predict_proba(X_test)
probabilities = np.array(y_predict_proba)[:, 1]
fpr, tpr, _ = roc_curve(y_test, probabilities)
roc_auc = auc(fpr, tpr)

但由于某些原因我想避免使用 predict_proba。所以我的问题是:如何获得具有 fp, tp, fn, tn, fpr, tpr 的 AUC ?换句话说,是否可以在没有 roc_curve 的情况下获得 AUC ?

最佳答案

是的,可以在不调用 roc_curve 的情况下获得 AUC。

您首先需要创建 ROC(接收者操作特征)曲线。为了能够使用 ROC 曲线,您的分类器应该能够对示例进行排序,以便具有较高等级的示例更有可能是正面的(例如欺诈)。例如,逻辑回归输出概率,这是您可用于排名的分数。
ROC 曲线是通过在各种阈值设置下绘制真阳性率 (TPR) 与假阳性率 (FPR) 来创建的。举个例子:

enter image description here

模型性能是通过查看 ROC 曲线(或 AUC)下的面积来确定的

enter image description here

您可以找到 here更详细的解释。

关于python - 手动计算 AUC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50848163/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com