机器学习代价曲线作业题目:
二分类问题,0为正类,1为负类,预测正类的概率如下表。非均等代价,代价矩阵为cost01=1, cost10=20,costii=0(i=0,i=1)。请画出期望总体代价。(编程实现)

#计算期望总代价
#0为正类/1为负类
label=  [0,0,1,0,0,0,1,1,0,1,0,1,0,1,1,1,0,1,0,1]
score=[0.9,0.8,0.7,0.6,0.55,0.54,0.53,0.52,0.51,0.505,0.4,0.39,0.38,0.37,0.36,0.35,0.34,0.33,0.30,0.1]
#计算TPR/FRP 绘制ROC曲线
#以score作为阈值 然后进行分类 计算得到TPR/FPR 从而得到FNR/FPR
#首先1个循环是用于确定阈值
#另一个循环是用于遍历score 确定预测标签
#然后计算每次循环的TPR/FPR/FNR
#定义一个函数方便计算
def cost_curve_FPR_FNR(true,predict):count=len(predict)true_1=sum(true)        true_0=count-true_1   TP=0FP=0for i in range(count):if predict[i]==true[i] and predict[i]==0:TP+=1elif predict[i]!=true[i] and predict[i]==0:FP+=1     TPR = TP/true_0FNR = 1- TPR#假反率FPR = FP/true_1return TPR,FPR,FNR#计算TPR/FPR/FNR的数列
count=len(score)
TPR_array=[]
FPR_array=[]
FNR_array=[]
for i in range(count):predict=[]for j in range(count):if score[j]>=score[i]:predict.append(0)else:predict.append(1)TPR,FPR,FNR= cost_curve_FPR_FNR(label,predict)TPR_array.append(TPR)FPR_array.append(FPR)FNR_array.append(FNR)#绘制图片
import matplotlib.pyplot as plt
import numpy as np
fig,axis = plt.subplots(1,2,figsize = (15,6))
axis = axis.ravel()
axis[0].plot(FPR_array,TPR_array,'r')
axis[0].set_title('ROC Curve')
axis[0].set_xlabel('FPR')
axis[0].set_ylabel('TPR')
axis[1].plot((0,1),(FPR_array,FNR_array),'b')
axis[1].set_title('Cost Curve')
axis[1].set_xlabel('FPR')
axis[1].set_ylabel('FNR')

最终结果图如下:

机器学习西瓜书-代价曲线相关推荐

  1. 机器学习西瓜书-1-2章

    学习目标: 概览机器学习西瓜书 1.2章 学习内容: 第一章 绪论 1.1 基本术语 1.2 假设空间 1.3 归纳偏好 1.4 发展历程 第二章 模型评估与选择 2.1 经验误差与过拟合 2.2 评 ...

  2. 周志华-机器学习西瓜书-第三章习题3.3 编程实现对率回归

    本文为周志华机器学习西瓜书第三章课后习题3.3答案,编程实现对率回归,数据集为书本第89页的数据 使用tensorflow实现过程 # coding=utf-8 import tensorflow a ...

  3. 小白学机器学习西瓜书-第三章对数几率回归

    小白学机器学习西瓜书-第三章对数几率回归 3.3 对数几率回归 3.3.1 对数几率函数 3.3.1 估计参数 上一部分我们介绍了线性回归,包括简单的二元回归和多元回归,这两个主要解决的是拟合预测的问 ...

  4. 机器学习西瓜书(周志华)第七章 贝叶斯分类器

    第七章 贝叶斯分类器 1. 贝叶斯决策论 1.1 先验分布 1.2 后验分布 1.3 似然估计 1.4 四大概率在贝叶斯分类中指代含义 1. 朴素贝叶斯 7. 课后练习参考答案 1. 贝叶斯决策论 贝 ...

  5. 机器学习西瓜书南瓜书 神经网络

    机器学习西瓜书&南瓜书 神经网络 1. 神经元模型 神经网络:由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实事件物体所做出的交互反应. 神经网络最基本的成分 ...

  6. 【吃瓜教程】周志华机器学习西瓜书第三章答案

    线性模型结构梳理 3.1 试析在什么情形下式3.2中不必考虑偏置项b 答案一: 偏置项b在数值上代表了自变量取0时,因变量的取值: 1.当讨论变量x对结果y的影响,不用考虑b: 2.可以用变量归一化( ...

  7. [机器学习]西瓜书南瓜书学习(更新中)

    B站网课学习视频 南瓜书datawhale开源内容 南瓜书github开源内容 什么是机器学习 概念介绍 人工智能:让机器变得像人一样拥有智能的学科 机器学习:让计算机像人一样能从数据中学习出规律的一 ...

  8. 机器学习-西瓜书、南瓜书第三章

    线性模型 基本形式 一.线性回归 回归任务最常用的性能度量是均方误差,因为均方误差有比较好的几何意义,对应了最常用的**"欧氏距离",最小二乘法就是基于均方误差进行模型求解的. 求 ...

  9. 机器学习-西瓜书第一、二章

    第一章:绪论 基本概念 数据集:所有数据的集合 训练集:训练样本的集合 属性(特征):某事物或对象在某方面表现的性质 属性值:属性的取值 属性空间/样本空间/输入空间:属性张成的空间 泛化能力:学得模 ...

  10. 机器学习西瓜书学习——绪论

    在我们日常生活中,我们有时候会根据自己的生活经验,对即将发生的事进行预估.当我们有了足够多的经验,我们就可以对一些情况做出有效的决策.比如说"朝霞不出门 晚霞行千里",就是根据我们 ...

最新文章

  1. UI设计的发展前景怎么样?
  2. 收藏 | 图像识别的可视化解释神经网络
  3. 【转】奴性哲学十句话,洗脑常用词!!!
  4. Linux基础二(挂载、关机重启与系统等级)
  5. C++之List保存类内存问题
  6. Spring Quartz 框架结构概述(一)[转]
  7. 车牌识别LPR(八)-- 字符识别
  8. 微信小程序获取用户头像和昵称能力调整!新的代替方案!
  9. 安装LuaRocks
  10. 测绘地理信息标准规范汇总下载
  11. Cys(Npys)-(Arg)₉,H2N-C(Npys)-RRRRRRRRR-OH
  12. 深度测评小程序跨端开发框架
  13. Java 根据贷款年限对应的不同利率计算月供
  14. 基于Java实现的定时给微信好友发送消息
  15. T00ls - Metasploit 教程 笔记
  16. 设计模式笔记-----七大原则
  17. 数学建模常用模型05 :多元回归模型
  18. 使用HTML5实现网页音乐播放器
  19. 浅谈图片加载:逐行扫描VS交错扫描
  20. python数据可视化之matplotlib精进pdf_Python数据可视化之matplotlib精进

热门文章

  1. 计算机专业公务员歧视,考研,是我这辈子最后悔的事?工作找不到,公务员不能考!...
  2. deny后加to do还是doing_还在为动词后面接不定式还是动名词而发愁?点开解惑
  3. A New Voyage
  4. 如何离线发布百度地图
  5. 号外: 我开通了英语专栏
  6. 线性同余发生器与伪随机数
  7. python2 与 python3 共存
  8. CSDN博客如何更换皮肤
  9. PeopleSoft
  10. html 链接excel表格,excel表格超链接设置