成为AI产品经理——模型评估(混淆矩阵)

一、混淆矩阵

1.混淆矩阵的介绍

混淆矩阵有两个定义positive(正例)negative(反例)。分别代表模型结果的好和坏。

下图就是一个分类问题的混淆矩阵。横行代表真实的情况,而竖行代表预测的结果。

为了便于理解,我在这里举一个分出瓜的好坏的分类问题。

TP:True Positive,真正例。表示这个瓜实际上是一个好瓜,预测出来的结果也是好瓜,所以它是一个真的好瓜,是一个真正例。预测结果正确。

FP:False Positive,假正例。表示这个瓜本身是一个坏瓜,预测结果却是一个好瓜,所以它是一个假的好瓜,是一个假正例。预测结果错误。

FN:False Negative,假反例。表示这个瓜本身是一个好瓜,预测结果是坏瓜,所以它是一个假的坏瓜,是一个假反例。预测结果错误。

TN:Truen Negative,真反例。表示这个瓜本身是一个坏瓜,预测结果也是一个坏瓜,所以它是一个真的坏瓜,是一个真反例。预测结果正确。

需要明确,明确T和F代表模型预测结果的对错,P和N代表模型预测出来的结果。

接下来,我们举个例子,便于我们学习混淆矩阵指标:准确率、精准率和召回率。

有100个瓜,实际上由40个好瓜,60个坏瓜。但是模型预测出来的结果为50个好瓜,50个坏瓜。在这50个好瓜里面,有30个预测对了,有20个预测错了。

此时预测的50个好瓜里面,30个预测对了,即真好瓜(TP);20个预测错了,即假好瓜。 所以TP = 30,FP = 20。 

 我们可以知道,40个好瓜=真的好瓜+预测错的坏瓜;60个坏瓜 = 真的坏瓜+假的好瓜。如下图:

根据以上式子,我们计算出了混淆矩阵所有的值。

根据以上条件,我们能够写出混淆矩阵。

我们期待的结果是预测结果和真实结果相一致,但是往往不太可能,所以我们需要评估的好坏,这里我们需要用到混淆矩阵的指标:准确率、精确率、召回率。 

2.准确率

准确率是预测准确的样本数在所有预测样本数的比例。在我们这里就是预测的真的好瓜和真的坏瓜在总瓜数的占比。

准确率的计算公式为:  accuracy =\frac{TP + TN}{TP+FP+TN+FN}

通过准确率我们可以看出模型的分类能力。

但是准确率的弊端是:如果在样本不均衡的情况下,占比大的对样本的影响比较大。

考虑一个极端的例子,其中有100个样本,其中99个属于类别A,1个属于类别B。如果一个模型将所有样本都预测为类别A,那么它的分子中,预测准确的A样本为99,预测准确的B样本为0,除以分母100。accuracy = \frac{99+0}{100}=0.99

准确率将是99%。尽管准确率很高,但模型对于类别B的预测几乎完全失败。所以这是不对的。

这种情况下,我们需要借助精准率(precision)。

3.精确率

精准率(precision),是用来计算模型预测的多准的指标,又名查准率。

精准率的计算公式为:precision =\frac{TP}{TP+FP}

精确率关注的是在所有模型认为是正类别的样本中,有多大比例是真实的正类别。因此,精确率通常被解释为模型有多准确地"查准"了正类别,即模型有多能够确保它的正类别预测是准确的。

在一些应用中,比如垃圾邮件过滤,我们希望模型尽可能地准确地标识出正类别(即真正的垃圾邮件),同时避免将负类别(即正常邮件)错误地分类为正类别。在这种情况下,我们希望精确率尽可能高,以确保模型的正类别预测是可靠的。

3.召回率 

如果说精确度是模型预测的多准的指标,那么召回率就是模型广度的指标,又被称为查全率。

召回率的计算公式为:recall= \frac{TP}{TP+FN} 

公式表示需要分类的类别,在实际的该种类总数中,占比多少。好瓜在实际好瓜的总数是多少。所以召回率(查全率)是指模型在多大程度上能够预测出我需要的类别。

比如说:我有100个好瓜,你识别出50个,那么你的就在识别出我所需要的类别的能力就有50%。 

在实际的评估工作中,我们通常使用精确率和召回率来评估模型的效果。通过召回率看找到了多少我们想要找的好瓜,通过精确率来看我们找好瓜有多准。

召回率关注的是在实际为正类别的样本中,模型有多大程度地能够成功地识别出来。因此,召回率通常被解释为模型有多好地"查找"或"捕捉"了正类别,即模型有多能够找到所有实际存在的正类别样本。

在一些应用中,如医学诊断或欺诈检测,对于正类别的遗漏是不可接受的,因为这可能导致严重的后果。在这种情况下,我们希望模型的召回率尽可能高,以确保尽可能多地捕捉到所有真实的正类别。

由于精确率和召回率相互矛盾。模型如果想要查找的更准确,会减少识别的范围,所以精准率高,召回率低;反之,如果想要召回率高一点,那么精确率也会随之下降。

所以我们一般给算法同学提需求的时候会同时考虑。比如:30%的召回率下精准率提升5倍。

4.F1值

F1指标可以综合反映召回率和精准率,F1值越高,代表模型在精确率和召回率的综合表现越高

F1的计算公式:F1 = \frac{2*precision*recall}{precision+recall}

5.总结 

准确率:比较容易理解,在样本不均衡的时候指标偏差过大。

精确率:模型预测的准确度。宁肯不预测,也不能预测错,秉持宁缺毋滥的原则。比如在刷脸支付的场景下,我们宁可检测不通过,而不能预测出错。

召回率:关注筛选的结果是不是全面的场景,秉持宁可错杀一千,也不放过一个的原则。

PS:如果对于这几个指标还是不明白,推荐大家看这篇博文,讲的比较清晰。

准确率,精准率,召回率,真正率,假正率,ROC/AUC-CSDN博客

参考文献: 刘海丰——《成为AI产品经理》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/225449.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为的团队管理法

大家好,我是老原。 对于关注我很久的粉丝朋友来说,“团队”这个关键词一直在出现。 毕竟,项目经理最重要的工作就是带团队,拿结果。 那问题就来了:怎么才能管理好团队,顺利的推进项目? 之前…

关于数据中心机房防雷和接地系统的解决方案

随着通信技术、计算机网络技术的飞速发展,计算机和网络越来越深入人们生活和工作中,同时也预示着数字化、信息化时代的来临。由于微电子设备具有高密度、高速度、低电压、和低功耗等特性,极易受雷击、电磁脉冲辐射、地电位反击、电源尖波等瞬…

【Linux驱动开发】环境搭建Linux驱动开发环境

环境搭建Linux驱动开发环境 1. 简单描述2. 资源3. 安装4. 基本操作和设置 1. 简单描述 基于讯为电子rk3568教程 2. 资源 下载 VMware Workstation Pro 17 链接 Ubuntu 桌面版(64位) 链接 3. 安装 需要选择自定义硬件(内存大于16g 硬盘500g…

redis Redis::geoAdd 无效,phpstudy 如何升级redis版本

redis 查看当前版本命令 INFO SERVERwindows 版redis 进入下载 geoadd 功能在3.2之后才有的,但是phpstudy提供的最新的版本也是在3.0,所以需要升级下 所以想出一个 挂狗头,卖羊肉的方法,下载windows 的程序,直接替…

羊大师提示,别让坏习惯影响生活

羊大师提示,别让坏习惯影响生活 拖延是人们常常会遇到的一种坏习惯,它不仅浪费时间,还会对生活、工作和学习造成负面影响。为了改变这种坏习惯,我们需要采取一系列的措施,从根本上改变自己的生活方式。下面小编羊大师…

软件测试测试文档编写

在软件测试中的流程中,测试文档也是一个重要的流程,所以测试人员也需要学习测试文档的编写和阅读。 一、定义:   测试文档(Testing Documentation)记录和描述了整个测试流程,它是整个测试活动中非常重要…

vue跨域请求

vue.config.js devServer:{proxy:"http://localhost:8081"}main.js中定义 import axios from "axios"; axios&#xff0c; App.vue中引用 <template><Article/> </template><script> import Article from "/components/Ar…

vue3中的customRef创建一个自定义的 ref对象

customRef 创建一个自定义的 ref&#xff0c;并对其依赖项跟踪和更新触发进行显式控制 小案例: 自定义 ref 实现 debounce <template><div style"font-size: 14px;"><input v-model"text" placeholder"搜索关键字"/><…

【 DIY 普通 连接器 产品规格 】A JST

一、说明 以JST举例&#xff0c;这个基本算标杆产品&#xff0c;深受大家喜欢&#xff0c;但是JST被国内的作坊模仿其外观&#xff0c;以至于真假难辨。 二、民用及DIY的市场 在这里不必考虑可靠性&#xff0c;维修性&#xff0c;保障性等&#xff0c;大家比较关心的还是价格…

buuctf web [RoarCTF 2019]Easy Calc

试了一下&#xff0c;数字可以计算&#xff0c;但字符被过滤了&#xff0c;打开源码看看 源码里提示&#xff0c;有waf,并且发现了一个新页面 访问新页面 show_source&#xff08;&#xff09; show_source()函数用于将指定文件的源代码输出到浏览器或者写入到文件中。 show_s…

ESP32-Web-Server编程-JS 基础 1

ESP32-Web-Server编程-JS 基础 1 概述 前述分别在 HTML 基础 和 CSS 基础 中介绍了 HTML、CSS 的基本内容。HTML 定义了网页中包含哪些对象&#xff0c;CSS 定义了对象的显示样式。JavaScript(LiveScript)是一种运行于客户端的解释性脚本语言&#xff0c;使 HTML 页面更具动态…

入金牌投资平台,学先进炒股技术,掌未来宝贵财富

钱是个好东西&#xff0c;它能让人享受到世间的甜&#xff0c;它能让人感受到万众瞩目的荣耀&#xff0c;它能让人得到一切该有的尊敬。可以这么说&#xff0c;没有人不爱钱。可是&#xff0c;君子爱财取之有道。对于正常的人而言&#xff0c;都只希望通过正规的渠道赚到尽可能…