0

我需要制作一个包含 TPR 和 FPR 值以及精度和召回率的表格。我在 python 中使用 sklearn.metrics 包中的 roc_curve 和 precision_recall_curve 函数。我的问题是每个函数都为我提供了不同的阈值向量,而我只需要一个即可将值合并为单个表中的列。有人可以帮我吗?

提前致谢

4

1 回答 1

0

阈值有两个主要区别。

  1. 顺序不同。roc_curve阈值按降序排列,precision_recall_curve阈值按升序排列。

  2. 数字不同。在roc_curve,,n_thresholds = len(np.unique(probas_pred))而在precision_recall_curven_thresholds = len(np.unique(probas_pred)) - 1。在后者中,roc_curve不包括最小阈值。同时,最后的精度和召回值分别为 1. 和 0.,没有对应的阈值。因此,tpr、fpr、precision和recall的item数是相同的。

那么,回到您的问题,如何制作一个包含 tpr、fpr、精度和召回率以及相应阈值的表格?以下是步骤:

  1. 丢弃最后的精度和召回值
  2. 反转精度和召回值
  3. 从阈值中计算对应于最低阈值的精度和召回值roc_curve
  4. 将所有值放入同一个表中
于 2015-05-06T18:07:32.067 回答