sklearn.metrics.roc_curve使用说明
roc曲线是机器学习中十分重要的一种学习器评估准则,在sklearn中有完整的实现,api函数为sklearn.metrics.roc_curve(params)函数。
官方接口说明:http://scikit-learn.org/stable/modules/generated/sklearn.metrics.roc_curve.html
不过这个接口只限于进行二分类任务。!
下面主要是对官方接口做一下翻译。
接口函数 sklearn.metrics.
roc_curve
(y_true, y_score, pos_label=None, sample_weight=None, drop_intermediate=True)
参数说明
y_true:数组,存储数据的标签,维度就是样本数,形如[0,1,1,0,1...]这样的,也可以是-1和1,只要有两个值
y_score:数组,存储数据的预测概率值,维度也是样本数,形如[0.38,0.5,0.8]这样的
pos_label:整型或字符串,当y_true中只有一个值时,比如都是1或者都是0,无法判断哪个是正样本,需要用一个数字或字符串指出
sample_weight:采样权重,这个官方没有仔细说,是一个可选参数,有待考察
drop_intermediate:丢掉一些阈值,以便画roc曲线图
返回值:一共三个,分别是fpr,tpr,thresholds
fpr:数组,随阈值上涨的假阳性率
tpr:数组,随阈值上涨的真正例率
thresholds:数组,对预测值排序后的score列表,作为阈值,排序从大到小
举例
>>> import numpy as np >>> from sklearn import metrics >>> y = np.array([1, 1, 2, 2]) >>> scores = np.array([0.1, 0.4, 0.35, 0.8]) >>> fpr, tpr, thresholds = metrics.roc_curve(y, scores, pos_label=2) >>> fpr array([ 0. , 0.5, 0.5, 1. ]) >>> tpr array([ 0.5, 0.5, 1. , 1. ]) >>> thresholds array([ 0.8 , 0.4 , 0.35, 0.1 ])
解释一下,样本标签为y,共有1和2两个值,预测值为scores,里面是预测为正样本的概率,正样本是什么呢,在函数中通过pos_label指定为2,然后便将score排序,
由大到小,也就有了后面的thresholds,按照这个顺序,依次将前面的样本预测为正样本,后面为负样本,这里看一下样本标签和预测值的一一对应
[1,1,2,2]->[0.1,0.4,0.35,0.8],共有两个正样本,两个负样本
以0.8为阈值,第一个假设为正样本,后面三个假设为负样本,0.8对应的确实为正样本,则真正例率为1/2,假阳性率为0,因为没有负样本被误判为正样本
然后以0.4为阈值,前两个假设为正样本,后两个假设为负样本,0.4对应的为负样本,则真正例数没有增加,于是仍为0.5,而假阳性增加一例,此时假阳性率为1/2
后面的依此类推,这就是这个api的基本使用说明。
补充下:tpr=tp/所有正样本,fpr=fp/所有负样本
转载于:https://www.cnblogs.com/wzyuan/p/9440017.html
sklearn.metrics.roc_curve使用说明相关推荐
- curve函数 roc_sklearn.metrics.roc_curve使用说明
roc曲线是机器学习中十分重要的一种学习器评估准则,在sklearn中有完整的实现,api函数为sklearn.metrics.roc_curve(params)函数. 不过这个接口只限于进行二分类任 ...
- sklearn.metrics.roc_curve
官方网址:http://scikit-learn.org/stable/modules/classes.html#module-sklearn.metrics 首先认识单词:metrics: ['mɛ ...
- sklearn.metrics.roc_curve解析
官方网址:http://scikit-learn.org/stable/modules/classes.html#module-sklearn.metrics 首先认识单词:metrics: ['m ...
- sklearn.metrics.roc_curve使用简要说明
sklearn.metrics.roc_curve使用简要说明 一.背景说明 二.TP.TN.FP.FN概念 四.roc_curve运行机制简单剖析 4.1.roc_curve简单介绍 4.1.1 重 ...
- sklearn.metrics中的评估方法介绍(accuracy_score, recall_score, roc_curve, roc_auc_score, confusion_matrix)
accuracy_score 分类准确率分数是指所有分类正确的百分比.分类准确率这一衡量分类器的标准比较容易理解,但是它不能告诉你响应值的潜在分布,并且它也不能告诉你分类器犯错的类型. 形式: skl ...
- sequential模型编译时的指标设置:sklearn.metrics:指标
sklearn.metrics: Metrics 官网是最好的学习区. See the Model evaluation: quantifying the quality of predictions ...
- Python sklearn机器学习各种评价指标——Sklearn.metrics简介及应用示例
Python Sklearn.metrics 简介及应用示例 利用Python进行各种机器学习算法的实现时,经常会用到sklearn(scikit-learn)这个模块/库. 无论利用机器学习算法进行 ...
- sklearn.metrics 用法详解
1. 用法概览 1.1 分类 函数 功能 metrics.accuracy_score 准确率 metrics.balanced_accuracy_score 在类别不均衡的数据集中,计算加权准确率 ...
- 不平衡多分类问题模型评估指标探讨与sklearn.metrics实践
我们在用机器学习.深度学习建模.训练模型过程中,需要对我们模型进行评估.评价,并依据评估结果决策下一步工作策略,常用的评估指标有准确率.精准率.召回率.F1分数.ROC.AUC.MAE.MSE等等,本 ...
- Sklearn.metrics函数
Python Sklearn.metrics 简介及应用示例 利用Python进行各种机器学习算法的实现时,经常会用到sklearn(scikit-learn)这个模块/库. 无论利用机器学习算法进行 ...
最新文章
- 「机器学习」机器学习算法优缺点对比(汇总篇)
- 2、 db、tables_priv、columns_priv和procs_priv权限表
- 1.4编程基础之逻辑表达式与条件分支 21 苹果和虫子2
- 【连载】如何掌握openGauss数据库核心技术?秘诀一:拿捏SQL引擎(4)
- 建议考事业编吗?为什么?
- sklearn中CountVectorizer与TfidfVectorizer区别
- python基础:购物车代码
- 3年以上经验Java开发面试题
- 莫烦python看的顺序_莫烦Python笔记__Python多进程技巧
- 《大型网站技术架构:核心原理与案例分析》.pdf——架构系列必看20本技术书籍
- JVM 字节码 栈图(Stack Map Table) 学习笔记
- 《佛密诸事》第二章 宇宙诸现象
- 〇、什么是全栈工程师
- QPBOC——数据认证
- 软件测试基础 按照测试对象划分 界面测试(UI测试.响应式页面 可靠性测试 容错性测试 文档测试 平台测试 易用性测试等
- Linux调整网卡MAC地址(指令)
- js 解决Safari浏览器中实现支付宝网页支付无法拉取支付宝APP的问题
- 简单的数据库代理操作
- 问卷设计及问卷调查中的问题与技巧
- windebug(转载别人的节选)