位置: 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模块拖拽)

  • 投资公司取得的投资收益属于销售额吗
  • 公司购买的车辆可以抵扣进项税吗
  • 工地工贸药品入库流程
  • 政府会计固定资产盘亏的账务处理
  • 教育行业税收优势分析
  • 企业会计制度固定资产保险费
  • 小微企业所得税税率2.5% 10% 25%
  • 返利平台可信吗
  • 建筑企业简易计税异地预缴
  • 对方公司退回货款,但发票已经开了怎么写摘要
  • 减免应收账款账务处理
  • 免费的企业
  • 公司收到法院的欠款起诉书,应该怎么办
  • 贴标企业
  • 企业收到的政府补贴,怎么入账
  • 扣除工资作为违约金
  • 个税申报没交会收滞纳金吗
  • 无法执行合同的说明函
  • 发票抬头写个人有效吗
  • 什么时候抵扣增值税
  • 贸易公司未开票收入要报税吗
  • 企业的无形资产包括哪些内容
  • 租用服务器会泄漏数据吗
  • 个人装修可以开发票吗?
  • win7系统怎么进
  • 企业所得税汇算表
  • 模具维修费做什么费用
  • 网件R6400路由器怎么样?R6400拆解与内部结构评测
  • 为什么打开Win10虚拟器后一直在界面
  • 硬盘安装系统方法
  • 房地产企业何时结转利润
  • 对于接受捐赠的固定资产,其成本应当依次按照
  • 支付给其他公司的工程项目管理费
  • 在laravel中,界面文件应该放在以下哪个路径下
  • php获取文本内容
  • 微信小程序登录后端
  • 店面装修费怎么算
  • php遍历结果集
  • php二维数组添加数据
  • 银行对账单附在记账凭证中吗
  • spring bootcsdn
  • 合并命令如何使用
  • 会计记账凭证摘要如何编写
  • ps使用背景橡皮擦的时候需要按住什么键
  • 加油票发票抬头开错了
  • 应付职工薪酬账户期末余额可能是
  • java自增自减运算符的规则
  • mongodb 增加用户
  • 商誉减值每年都要调整吗
  • 一般纳税人的账务处理分录
  • 小企业长期债券投资损失应当计入
  • 出口化妆品会计怎么做账
  • 小规模纳税人减按1%怎么计算
  • 发票当月没开
  • 工程款的税费怎么计算
  • 增值税减免税款计入什么科目
  • 应交增值税进项税额月底怎么处理
  • 测绘费发票图片
  • 银行回单自助打印可以打多久的记录
  • 企业租赁厂区的管理制度
  • 收款收据可以入账吗
  • c++ 虚数
  • xp系统玩游戏卡吗
  • /wlan direct
  • wordpress怎么安装插件
  • win7怎么设置网速限制
  • vsftpd的配置文件
  • ,linux
  • Coroutine couldn't be started because the the game object 'GameController' is inactive!
  • node.js jquery
  • unity3d功能
  • bat文件命令大全
  • python第三方库文档怎么看
  • 发票测试纸在哪里打印
  • 北京国税发票查询真伪查询
  • 泉州企业医保哪里缴费
  • 南方电网统一供应链平台
  • 别墅与普通住宅的优缺点
  • 税收制度的核心是税法
  • 刚注册了一家深圳公司
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设