函数声明:

precision_score(y_true, y_pred, labels=None, pos_label=1, average='binary', sample_weight=None)

其中较为常用的参数解释如下:

y_true:真实标签

y_pred:预测标签

average:评价值的平均值的计算方式。可以接收[None, 'binary' (default), 'micro', 'macro', 'samples', 'weighted']对于多类/多标签目标需要此参数。下面进行详细说明:

如果是None,则返回每个类的分数。否则,这决定了对数据进行平均的类型用下面几种统计方法的哪一种:

先说对于'micro' :

这两种写法是等价的

print(precision_score(y_test, y_pred,average='micro'))
print(np.sum(y_test == y_pred) / len(y_test))

以下内容中,P表示二分类时精确率的计算结果  部分内容参考

' macro '  : 相当于类间不带权重。不考虑类别数量,不适用于类别不均衡的数据集,其计算方式为: 各类别的P求和/类别数量

' weighted ' : 相当于类间带权重。各类别的P × 该类别的样本数量(实际值而非预测值)/ 样本总数量

举个例子:

如实际样本中,0类有98个样本,1类有2个样本,3类有100个样本,共有3类,样本总数为20。

预测结果中,0类全部预测为3类,全部错误;1类全部预测正确;3类全部预测为0类,全部预测错误。

则P_macro = 0 + 1 + 0 / 3 = 0.33333333

P_weighted = 0×98 + 1×2 + 0×100 / 200 = 2/200 = 0.01

再举个例子:

如共有100个样本,0类98个,1类2个;

预测结果为全0

则P_macro = 0.98 + 0 / 2 = 0.49

P_weighted = 98×0.98 + 0×2 / 100 = 2/200 = 0.9604

得出结论:

对于类别不均衡的分类模型,采用macro方式会有较大的偏差,采用weighted方式则可较好反映模型的优劣,因为若类别数量较小则存在蒙对或蒙错的概率,其结果不能真实反映模型优劣,需要较大的样本数量才可计算较为准确的评价值,通过将样本数量作为权重,可理解为评价值的置信度,数量越多,其评价值越可信。

官方说明:average : string, [None, 'binary' (default), 'micro', 'macro', 'samples', \'weighted']This parameter is required for multiclass/multilabel targets.If ``None``, the scores for each class are returned. Otherwise, thisdetermines the type of averaging performed on the data:``'binary'``:Only report results for the class specified by ``pos_label``.This is applicable only if targets (``y_{true,pred}``) are binary.``'micro'``:Calculate metrics globally by counting the total true positives,false negatives and false positives.``'macro'``:Calculate metrics for each label, and find their unweightedmean.  This does not take label imbalance into account.``'weighted'``:Calculate metrics for each label, and find their average weightedby support (the number of true instances for each label). Thisalters 'macro' to account for label imbalance; it can result in anF-score that is not between precision and recall.``'samples'``:Calculate metrics for each instance, and find their average (onlymeaningful for multilabel classification where this differs from:func:`accuracy_score`).

再给个链接给予参考:https://www.cnblogs.com/harvey888/p/6964741.html

【Python学习】 - sklearn学习 - 评估指标precision_score的参数说明相关推荐

  1. 如何绘制深度学习-目标检测评估指标P-R(precision-recall)曲线?如何计算AP(average-precision)?

    参考文章:深度学习-目标检测评估指标P-R曲线.AP.mAP 文章目录 P-R曲线: AP计算: 下面通过具体例子说明. 首先用训练好的模型得到所有测试样本的confidence score,每一类( ...

  2. 【深度学习】——模型评估指标MAP计算实例计算

    目录 一.知识储备 1.IOU--交集面积与并集面积之比 2.混淆矩阵(TP.FP.FN.TN) 问题1:上面的TP等具体是如何计算得到的? 3.精度precision&召回率recall 二 ...

  3. 深度学习各场景评估指标总结

    下表总结了机器学习在常见场景下使用的评估指标: (PS:原文档包含截图,已上传到个人资源) 类别 场景 场景描述 应用场景 指标说明 图像 图像分类  识别一张图中是否是某类物体/状态/场景,适用于图 ...

  4. sklearn预测评估指标:混淆矩阵计算详解-附Python计算代码

    目录 前言 混淆矩阵 python代码 前言 很多时候需要对自己模型进行性能评估,对于一些理论上面的知识我想基本不用说明太多,关于校验模型准确度的指标主要有混淆矩阵.准确率.精确率.召回率.F1 sc ...

  5. python之sklearn学习笔记

    sklearn介绍 scikit-learn是数据挖掘与分析的简单而有效的工具. 依赖于NumPy, SciPy和matplotlib. 它主要包含以下几部分内容: 从功能来分: classifica ...

  6. 深度学习-目标检测评估指标P-R曲线、AP、mAP

    基本概念 P-R曲线中,P为图中precision,即精准度,R为图中recall,即召回率. Example 下面通过具体例子说明. 首先用训练好的模型得到所有测试样本的confidence  sc ...

  7. sklearn预测评估指标计算详解:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1score

    目录 前言 一.准确率 二.精确率 三.召回率 四.F1-score

  8. 机器学习Sklearn学习总结

    Sklearn学习资料推荐: sklearn中文文档 机器学习入门必看:使用 scikit-learn 构建模型的通用模板 机器学习神器Scikit-Learn保姆教程! python机器学习_FF_ ...

  9. sklearn多分类准确率评估分类评估分类报告评估指标 案例

    20211101 深思熟虑之后,研究团队确定了两种评估尺度:价格下降查全率(PDR)和预定反悔率(BR).我们曾统计过,某间房间是否在某天被预定出去,以及预定的价格是多少.PDR和BR都能反映出这一点 ...

最新文章

  1. 基于点云方式的6D姿态识别
  2. python【数据结构与算法】战争之城(分支限界法)
  3. 浅析图片XSS中的哪些技术问题
  4. 倒序排序_排序算法(六):Counting Sort 计数排序
  5. pythonista脚本合集_GitHub - xchenhao/You-are-Pythonista: 汇聚【Python应用】【Python实训】【Python技术分享】等等...
  6. ***redis linux 命令使用总结
  7. Java 8 函数式编程学习笔记
  8. mysql 多表查询 join on_MySQL多表查询Left Join,Right Join学习笔记
  9. CentOS安装scp命令
  10. CSS3 Flexbox布局那些事
  11. Android2.2缩略图类ThumbnailUtils
  12. Linux BT下载(7)-种子解析模块设计与实现1
  13. 一文带你搞定AOP切面
  14. office word ppt 无法打开, 一直处于安全模式,无法解除
  15. 求大神帮助,感激不尽
  16. 微服务分布式构架开发实战PDF,阿里架构师推荐,快快收藏吧
  17. 泰坦尼克号生存者预测(细节篇)
  18. 嵌入式:交换指令之SWP,MRS,MSR
  19. 内嵌html5,显示:内嵌HTML5元素
  20. HTML5基本元素使用

热门文章

  1. 关于SOAP的几篇文章
  2. [剑指offer][JAVA]面试题[第23题][合并K个排序链表][分治][优先队列]
  3. mysql创建表格1warning_MySQL:创建、修改和删除表
  4. oracle分区表扩分区 很慢,升级oracle10g 大分区表update变慢
  5. python3.6 websocket异步高并发_在Python3.6上的websocket客户端中侦听传入消息时出现问题...
  6. thincmf 分页无法搜索_thinkcmf5 后台搜索分页保持分页条件
  7. 如何去掉文章里的非关键词c++_B2B/B2C网站:文章标题如何写才能促进搜索排名...
  8. cout输出数组_让程序从1开始一直执行++操作,10秒钟能输出最大的数是多少
  9. linux消息框架,远程处理器消息框架 - 基于Linux 简化 AMP 配置使其更方便更动态地分配资源...
  10. C#中变量(成员变量、局部变量、全局变量)的作用域