1. 四种情况

Precision精确率, Recall召回率,是二分类问题常用的评价指标。混淆矩阵如下:

预测结果为阳性 Positive 预测结果为假阳性 Negative
预测结果是真实的 True TP TN
预测结果是虚假的 False FP FN

通常关注的类为正类,其他类为负类。(以猫狗二分类为例,现在关注狗的precision和recall)

TP 正类预测为正类(预测出狗的图片实际标注也是狗)
FN 正类预测为负类(预测出猫的图片实际标注是狗)
FP 负类预测为正类(预测出狗的图片实际标注是猫)
TN 负类预测为负类(预测出猫的图片实际标注是猫)

T, F 代表的是图片对应的标签

P, N 代表的是图片预测出来的结果

2. Precision

精确率计算公式:
\[
P=\frac{TP}{TP+FP}
\]
理解:

TP+FP: 也就是全体Positive, 也就是预测的图片中是正类的图片的数目

TP: 也就是正类也被预测为正类的图片的个数

总之:预测正确的图片个数占总的正类预测个数的比例(从预测结果角度看,有多少预测是准确的)

3. Recall

召回率计算公式:
\[
R=\frac{TP}{TP+FN}
\]
理解:

TP+FN: 也就是全体完全满足图片标注的图片的个数

TP:正类被预测为正类的图片个数

总之:确定了正类被预测为正类图片占所有标注图片的个数(从标注角度看,有多少被召回)

4. 二分类举例

还是以猫狗二分类为例,测试集一共有20张狗, 20张猫的图片的标注图片(狗为正例),模型预测出其中有16张图片是狗,其中14张图片标注确实为狗,剩下两张图片标注为猫。

Positive Negative All
True TP: 14 TN: 6 20
False FP: 2 FN:
All 16

所以可以进行计算了
\[
precision = \frac{TP}{TP+FP} = \frac{14}{14+2}
\]

\[
recall = \frac{TP}{TP+FN} = \frac{14}{40}
\]

5. 多分类举例

该例引用自:https://www.itcodemonkey.com/article/9521.html

Class1 Actual_Class1 Actual_Class2 Actual_Class3
Predicted_Class1 30 20 10
Predicted_Class2 50 60 10
Predicted_Class3 20 20 80

比如我们对class2进行计算:

class2-TP:标签为class2, 预测为class2 = 60

class2-TN: 标签为class2, 预测不是class2 = 20+20 = 40

class2-FP: 标签不为class2, 预测为class2 = 50 + 10 = 60

class2-FN: 标签不为class2, 预测也不是class2 = 30+10+20+80 = 140

6. 其他指标

F1 值是precision和recall调和平均值:
\[
\frac{2}{F_1} = \frac{1}{P} + \frac{1}{R}
\]

\[
F_1 = \frac{2TP}{2TP+FP+FN}
\]

【深度学习】Precision 和 Recall 评价指标理解的更多相关文章

  1. 点云上的深度学习及其在三维场景理解中的应用(PPT内容整理PointNet)

      这篇博客主要是整理了PointNet提出者祁芮中台介绍PointNet.PointNet++.Frustum PointNets的PPT内容,内容包括如何将点云进行深度学习,如何设计新型的网络架构 ...

  2. 深度学习中dropout策略的理解

    现在有空整理一下关于深度学习中怎么加入dropout方法来防止测试过程的过拟合现象. 首先了解一下dropout的实现原理: 这些理论的解释在百度上有很多.... 这里重点记录一下怎么实现这一技术 参 ...

  3. 2.深度学习中的batch_size的理解

    Batch_Size(批尺寸)是机器学习中一个重要参数,涉及诸多矛盾,下面逐一展开. 首先,为什么需要有 Batch_Size 这个参数? Batch 的选择,首先决定的是下降的方向.如果数据集比较小 ...

  4. C#中的深度学习(三):理解神经网络结构

    在这篇文章中,我们将回顾监督机器学习的基础知识,以及训练和验证阶段包括哪些内容. 在这里,我们将为不了解AI的读者介绍机器学习(ML)的基础知识,并且我们将描述在监督机器学习模型中的训练和验证步骤. ...

  5. 从极大似然估计的角度理解深度学习中loss函数

    从极大似然估计的角度理解深度学习中loss函数 为了理解这一概念,首先回顾下最大似然估计的概念: 最大似然估计常用于利用已知的样本结果,反推最有可能导致这一结果产生的参数值,往往模型结果已经确定,用于 ...

  6. 深度学习之Batch Normalization

    在机器学习领域中,有一个重要的假设:独立同分布假设,也就是假设训练数据和测试数据是满足相同分布的,否则在训练集上学习到的模型在测试集上的表现会比较差.而在深层神经网络的训练中,当中间神经层的前一层参数 ...

  7. 【深度学习与TensorFlow 2.0】入门篇

    注:因为毕业论文需要用到相关知识,借着 TF 2.0 发布的时机,重新捡起深度学习.在此,也推荐一下优达学城与 TensorFlow 合作发布的TF 2.0入门课程,下面的例子就来自该课程. 原文发布 ...

  8. 深度学习VS机器学习——到底什么区别

    转自:https://baijiahao.baidu.com/s?id=1595509949786067084&wfr=spider&for=pc 最近在听深度学习的课,老师提了一个基 ...

  9. 用深度学习LSTM炒股:对冲基金案例分析

    英伟达昨天一边发布“全球最大的GPU”,一边经历股价跳水20多美元,到今天发稿时间也没恢复过来.无数同学在后台问文摘菌,要不要抄一波底嘞? 今天用深度学习的序列模型预测股价已经取得了不错的效果,尤其是 ...

随机推荐

  1. Vue学习笔记十一:按键修饰符和自定义指令(钩子函数)

    目录 padStart:补位 按键修饰符 Vue提供的按键修饰符 自定义按键修饰符 自定义指令 自定义指令的使用 钩子函数 钩子函数参数 使用钩子函数的bingding参数 私有自定义指令 钩子函数的 ...

  2. web端自动化——selenium测试报告生成、找到测试报告路径、实现发邮件(整合)

    有这样的一个场景: 假设生成的测试报告与多人相关,每个人都去测试服务器査看就会比较麻烦,如果把这种主动的且不及时的査看变成被动且及时的査收,就方便多了. 整个程序的执行过程可以分为三个步骤: ①    ...

  3. mysql 中不等于过滤 null 的问题(同时比较等于,大于和小于)

    在写 SQL 条件语句是经常用到 不等于'!='的筛选条件,此时要注意此条件会将字段为 null 的数据也当做满足不等于的条件而将数据筛选掉. 1.原始数据和表结构 CREATE TABLE `tes ...

  4. Ubuntu18.04 root 登录

    默认安装Ubuntu18.04都是不允许以root用户进行登录的,想要以root用户进行登录需要进行一些操作,主要是以下几个步骤:第一步:以普通用户登录系统,创建root用户的密码在终端输入命令:su ...

  5. JVM(五) 生产环境内存溢出调优

    1.gc配置参数 1.1 控制台打印gc日志 -verbose:gc -XX:+PrintGCDetails -XX:+PrintHeapAtGC(详细的gc信息) 1.2 输出gc日志到指定文件 - ...

  6. pytorch1.0实现GAN

    import torch import torch.nn as nn import numpy as np import matplotlib.pyplot as plt # 超参数设置 # Hype ...

  7. Fiddler使其在HttpURLConnection下正常抓包

    像陌陌这样使用HttpURLConnection进行通讯的APP还是无能为力 还需要对fiddler进行如下设置: 点击"Rules->CustomizeRules"; 在这 ...

  8. php实现映射

    目录 映射 实现 链表实现: 二叉树实现 复杂度分析 映射 映射,或者射影,在数学及相关的领域经常等同于函数.基于此,部分映射就相当于部分函数,而完全映射相当于完全函数. 映射(Map)是用于存取键值 ...

  9. 开始使用 Ubuntu(字体渲染去模糊+软件安装+优化配置+常见错误)(29)

    1. 中文字体渲染美化 + 去模糊 步骤: 1. 解压安装 lulinux_fontsConf_181226.tar.gz,按里面的安装说明操作: 2. 开启字体渲染: 打开 unity-tweak- ...

  10. php生成动态验证码 加减算法验证码 简单验证码

    预览效果: <?php /** *ImageCode 生成包含验证码的GIF图片的函数 *@param $string 字符串 *@param $width 宽度 *@param $height ...