【转】roc曲线与auc值

https://www.cnblogs.com/gatherstars/p/6084696.html

ROC的全名叫做Receiver Operating Characteristic,其主要分析工具是一个画在二维平面上的曲线——ROC curve。平面的横坐标是false positive rate(FPR),纵坐标是true positive rate(TPR)。对某个分类器而言,我们可以根据其在测试样本上的表现得到一个TPR和FPR点对。这样,此分类器就可以映射成ROC平面上的一个点。调整这个分类器分类时候使用的阈值,我们就可以得到一个经过(0, 0),(1, 1)的曲线,这就是此分类器的ROC曲线。一般情况下,这个曲线都应该处于(0, 0)和(1, 1)连线的上方。因为(0, 0)和(1, 1)连线形成的ROC曲线实际上代表的是一个随机分类器。如果很不幸,你得到一个位于此直线下方的分类器的话,一个直观的补救办法就是把所有的预测结果反向,即:分类器输出结果为正类,则最终分类的结果为负类,反之,则为正类。虽然,用ROC curve来表示分类器的performance很直观好用。可是,人们总是希望能有一个数值来标志分类器的好坏。于是Area Under roc Curve(AUC)就出现了。顾名思义,AUC的值就是处于ROC curve下方的那部分面积的大小。通常,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的performance。

 

https://www.cnblogs.com/dlml/p/4403482.html

转载于:https://www.cnblogs.com/aaronhoo/p/9640002.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ROC曲线AUC是描述二元分类模型性能的重要指标。Python作为一种高效的编程语言,提供了很多画ROC曲线和计算AUC的工具。 要画ROC曲线,需要先得到模型的预测概率分数和真实标签。然后,可以使用sklearn.metrics包中的roc_curve和auc函数进行计算和绘图。具体步骤如下: 1. 从模型中得到预测概率分数和真实标签(0或1)。 2. 使用roc_curve函数计算出不同阈下的真正率(True Positive Rate)和假正率(False Positive Rate)。 3. 使用plt.plot函数画出ROC曲线,并使用plt.show函数显示结果。 4. 使用auc函数计算AUC。 示例代码如下: ``` from sklearn.metrics import roc_curve, auc import matplotlib.pyplot as plt # 获取预测概率分数和真实标签 y_pred = model.predict_proba(X_test)[:,1] fpr, tpr, thresholds = roc_curve(y_test, y_pred) # 画ROC曲线 plt.plot(fpr, tpr, label='ROC curve (area = %0.2f)' % auc(fpr, tpr)) plt.plot([0, 1], [0, 1], 'k--') plt.xlim([0.0, 1.0]) plt.ylim([0.0, 1.05]) plt.xlabel('False Positive Rate') plt.ylabel('True Positive Rate') plt.title('Receiver operating characteristic') plt.legend(loc="lower right") plt.show() # 计算AUC auc_value = auc(fpr, tpr) print('AUC value is: %.2f' % auc_value) ``` 在这个示例中,我们使用model.predict_proba函数获取模型的预测概率分数,X_test为测试数据,y_test为测试数据的真实标签。我们使用roc_curve函数计算出不同阈下的真正率和假正率,并使用plt.plot函数画出ROC曲线。我们使用auc函数计算ROC曲线下的面积即AUC,并输出AUC

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值