位置: IT常识 - 正文

ROC曲线绘制(Python)(roc曲线绘制r语言)

编辑:rootadmin
ROC曲线绘制(Python)

推荐整理分享ROC曲线绘制(Python)(roc曲线绘制r语言),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:roc曲线绘制代码,roc曲线绘制代码,roc曲线绘制软件,roc曲线绘制代码,roc曲线绘制代码,ROC曲线绘制python代码,roc曲线绘制python,roc曲线绘制python,内容如对您有帮助,希望把文章链接给更多的朋友!

首先以支持向量机模型为例

先导入需要使用的包,我们将使用roc_curve这个函数绘制ROC曲线!

from sklearn.svm import SVCfrom sklearn.metrics import roc_curvefrom sklearn.datasets import make_blobsfrom sklearn. model_selection import train_test_splitimport matplotlib.pyplot as plt%matplotlib inline

然后使用下面make_blobs函数,生成一个二分类的数据不平衡数据集;

使用train_test_split函数划分训练集和测试集数据;

训练SVC模型。

X,y = make_blobs(n_samples=(4000,500), cluster_std=[7,2], random_state=0)X_train,X_test,y_train, y_test = train_test_split(X,y,random_state=0)clf = SVC(gamma=0.05).fit(X_train, y_train)

fpr,tpr, thresholds = roc_curve(y_test,clf.decision_function(X_test))plt.plot(fpr,tpr,label='ROC')plt.xlabel('FPR')plt.ylabel('TPR')

从上面的代码可以看到,我们使用roc_curve函数生成三个变量,分别是fpr,tpr, thresholds,也就是假正例率(FPR)、真正例率(TPR)和阈值。

ROC曲线绘制(Python)(roc曲线绘制r语言)

而其中的fpr,tpr正是我们绘制ROC曲线的横纵坐标,于是我们以变量fpr为横坐标,tpr为纵坐标,绘制相应的ROC图像如下:

值得注意的是上面的支持向量机模型使用的decision_function函数,是自己所特有的,而其他模型不能直接使用。

比如说我们想要使用其他模型(例如决策树模型)的结果绘制ROC,直接套用上面的代码,会报错,会显示没有这个函数。

以决策树模型为例,解决上述问题(适用于除向量机外的模型)

导入决策树模型包以及训练模型的代码省略了,只需要手动改一改就行了,我们直接看绘图的代码!

fpr,tpr, thresholds = roc_curve(y_test,clf.predict_proba(X_test)[:,1])plt.plot(fpr,tpr,label='ROC')plt.xlabel('FPR')plt.ylabel('TPR')

可以看到我们直接把只适用于支持向量机模型的函数decision_function更改成predict_proba(X_test)[:,1]就行了,让我们看看结果:

可以看到哈,决策树模型在这个数据集上的泛化能力不如支持向量机哈!!!学废了吗。

更好看的画法auc = roc_auc_score(y_test,clf.predict_proba(X_test)[:,1])# auc = roc_auc_score(y_test,clf.decision_function(X_test))fpr,tpr, thresholds = roc_curve(y_test,clf.decision_function(X_test))plt.plot(fpr,tpr,color='darkorange',label='ROC curve (area = %0.2f)' % auc)plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')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 example')plt.legend(loc="lower right")plt.savefig('suhan.jpg',dpi=800)plt.show()

本文链接地址:https://www.jiuchutong.com/zhishi/299206.html 转载请保留说明!

上一篇:JAVAFile类以及怎么在目录不存在的情况下创建文件(javafiles)

下一篇:Vue 实现拖拽模块(二)自定义拖拽组件位置(vue模块拖拽)

  • 车船税是每个月交还是每年交
  • 进项税额转出就是要多交税吗
  • 税收滞纳金还会计算滞纳金吗
  • 外商投资的企业是民营企业吗
  • 发票开错抬头做红字发票的账务处理
  • 预提费用在资产负债表里写在哪
  • 制造费用结转到辅助生产成本
  • 单位边际贡献和边际贡献一样吗
  • 房地产企业净利润为负的原因
  • 企业购车支付购置税流程
  • 非货币性资产交换准则
  • 专票未认证是什么意思
  • 咨询费成本怎么成本结转
  • 购入固定资产会影响营业利润吗
  • 现金比率的计算公式是指
  • 费用一定计入当期损益吗
  • 拆除固定资产的补偿款
  • 哪些是非累计带薪缺勤?
  • 私车公用保险费用公司承担吗
  • 收到差额纳税的发票进项税能抵扣吗
  • 生产型企业出口非自产产品能享有退税吗
  • 杨志勇财政
  • 长期投资项目包括哪些
  • 营业外支出所得税汇算要调增吗
  • 出差补贴怎么算
  • mac dash
  • 车船使用税凭证还要过户吗怎么办
  • 简易计税办法和一般计税办法
  • 金融保险业的营业税率为
  • 土地增值税属于财产税吗
  • PHP:mcrypt_module_get_supported_key_sizes()的用法_Mcrypt函数
  • 工会经费相关问题有哪些
  • k8s控制器模式
  • 计算机视觉的应用
  • php 遍历字符串
  • php md5 16位
  • 小规模纳税人年收入超过500万必须转为一般纳税人吗
  • 流动比率取值是取期末
  • 残保金缴纳需要计提吗
  • 进项税加计抵减是什么意思
  • 未使用的固定资产计提折旧应当计入
  • mongodb查询表数据
  • nginx防盗链的作用
  • 申报错误要罚款吗
  • sqlserver阻止保存要求重新
  • 小规模纳税人缴纳增值税的会计科目
  • 工业用地便宜
  • 库存商品入库的会计分录怎么写
  • 注册公司时的注册资金认缴是什么意思
  • 记账凭证核算形式
  • 购买展示样品是指什么
  • 股份有限公司股东人数
  • 客户退货,但不退货
  • 查账征收的含义
  • 个税租房抵扣细则
  • sql server 文件
  • sql实现分页查询语句
  • win2000 xp
  • Win10 Mobile 10536预览版用得越久越卡顿是怎么回事?
  • Windows XP/Vista/Windows 7常见蓝屏故障分析
  • win7总是弹出windows激活
  • 升级到xp系统以后怎么办
  • daio.dll 病毒
  • 如何隐藏应用软件
  • centos6 docker
  • scanregistry.exe - scanregistry是什么进程 有什么用
  • win10查看电脑配置显卡
  • mx1014
  • win7开机提示重启怎么办
  • 深入解析windows
  • angular之ng-template模板加载
  • android导入别人的程序报错
  • 给自己的网站制作软件
  • jsp手机号验证
  • android怎么保存项目
  • python里的迭代器
  • 用python写随机数
  • JavaScript中的this
  • 电脑多窗口同步操作
  • 长沙市各个区的县市排名
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设