博客
关于我
Li‘s 影像组学视频学习笔记(15)-ROC曲线及其绘制
阅读量:563 次
发布时间:2019-03-09

本文共 977 字,大约阅读时间需要 3 分钟。

ROC曲线与AUC评价

ROC曲线全称为受试者工作特征曲线,它是用来衡量分类器性能的重要工具。ROC曲线通过图形化的方式展示分类器在不同阈值下的假阳率(FPR)和真阳率(TPR)之间的关系。

在ROC曲线中:

  • 横轴为假阳率(FPR),表示分类器预测出假阳性的比例。
  • 纵轴为真阳率(TPR),表示分类器预测出真阳性的比例。
  • 曲线上的每一点都对应着一个阈值,即当预测阳性概率达到或超过该阈值时,分类器会将样本判定为阳性。
  • 四个关键点:
    • (0,0):FPR=0,TPR=0,表示分类器对所有样本都预测为阴性。
    • (1,1):FPR=1,TPR=1,表示分类器对所有样本都预测为阳性。
    • (1,0):FPR=1,TPR=0,表示分类器对所有样本都预测错了。
    • (0,1):FPR=0,TPR=1,表示分类器对所有样本都预测对了。

AUC(Area Under Curve)即曲线下面积,用于量化分类器的整体性能。AUC得分越高,表示分类器的性能越好。通过计算ROC曲线下的面积,可以综合评估模型的 discrimination power(区分能力)。

以下是基于代码实现的ROC曲线与AUC计算:

from sklearn.metrics import roc_curve, roc_auc_score# 假设y是实际标签,y_probs是模型预测的概率结果y_probs = model_svm.predict_proba(X)fpr, tpr, thresholds = roc_curve(y, y_probs[:, 1], pos_label=1)plt.plot(fpr, tpr, marker='o')plt.xlabel('FPR')plt.ylabel('TPR')plt.show()auc_score = roc_auc_score(y, model_svm.predict(X))print(auc_score)

通过上述代码可以绘制ROC曲线并计算AUC得分。通常,我们会选择AUC得分最高的模型作为最优模型。此外,可以通过调整阈值(thresholds)来优化分类器的性能,选择最优阈值时,可以通过最大化 TPR - FPR 来实现。

作者:北欧森林

来源:简书,已获授权转载

RadiomicsWorld.com “影像组学世界”论坛:

你可能感兴趣的文章
nginx 常用指令配置总结
查看>>
Nginx 常用配置清单
查看>>
nginx 常用配置记录
查看>>
nginx 开启ssl模块 [emerg] the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx
查看>>
Nginx 我们必须知道的那些事
查看>>
Nginx 的 proxy_pass 使用简介
查看>>
Nginx 的配置文件中的 keepalive 介绍
查看>>
Nginx 结合 consul 实现动态负载均衡
查看>>
Nginx 负载均衡与权重配置解析
查看>>
Nginx 负载均衡详解
查看>>
nginx 配置 单页面应用的解决方案
查看>>
nginx 配置https(一)—— 自签名证书
查看>>
nginx 配置~~~本身就是一个静态资源的服务器
查看>>
Nginx 配置清单(一篇够用)
查看>>
Nginx 配置解析:从基础到高级应用指南
查看>>
nginx+php的搭建
查看>>
nginx+tomcat+memcached
查看>>
nginx+Tomcat性能监控
查看>>
nginx+uwsgi+django
查看>>
Nginx-http-flv-module流媒体服务器搭建+模拟推流+flv.js在前端html和Vue中播放HTTP-FLV视频流
查看>>