推荐算法评价指标(ACC、查全率、查准率、F1-Score、ROC、AUC,P-R)

2023-05-16

文章目录

    • 混淆矩阵
    • 二级指标
    • 三级指标
      • F1-Score
      • ROC(AUC)
      • PR曲线

推荐系统的评价指标很多,今天介绍:准确率(ACC)、查准率(P精确率)、查全率(R召回率)、F1-score、AUC值,ROC曲线、PR曲线

以上的所有指标都是依托于混淆矩阵的,所以下面简单贴一张混淆矩阵的图吐出来

混淆矩阵

在这里插入图片描述

  以上就是混淆矩阵,其中挨个解释一下表中内容。列表示的是真实值,而行表示预测值,所以列和行的Positive和Negative所表示的含义是不一样的,列的Positive和Negative表示的是真实的正样本和负样本;而行的Positive和Negative表示的是预测出来的是正样本还是负样本

那么TP就很好理解了,其表示的就是本身就是正样本,预测的时候也预测为正样本,从英文表示是True Positive上也是可以明白的。

TP:英文True Positive ,表示本身是正样本,预测也是正样本,预测正确
TN:英文True Negative,表示本身是负样本,预测也是负样本,预测正确
FP:英文False Positive,表示本身负样本,但是预测为正样本,预测错误
FN:英文False Negative,表示本身是正样本,但是预测为负样本,预测错误

总结一下:结合图中也可以看出,绿色对角线表示预测正确的样本,红色表示预测错误的样本。

通常模型的好坏就往往就是从模型的预测结果来判断的,但是由于混淆矩阵里面的都是具体的个数,不够直观,所以一般会考虑对齐的量纲进行一些约束,通过一些方式把他约束到0-1之间这样,所以也就在混淆矩阵的基础上衍生出了,二级指标、三级指标

二级指标

指标名数学表示含义
准确率(ACC) A c c u r a c y ( 准确率 ) = T P + T N T P + T N + F P + F N Accuracy(准确率)=\frac {TP+TN} {TP+TN+FP+FN} Accuracy(准确率)=TP+TN+FP+FNTP+TN预测正确的样本占所有样本的比例,其中预测正确的可能有正样本也可能有负样本。
查全率(精确率Precision) P r e c i s i o n ( 查全率 P ) = T P T P + F P Precision(查全率P)=\frac {TP} {TP+FP} Precision(查全率P)=TP+FPTP预测出的正样本中,真正的正样本占了多少比例。
查准率(召回率Rcall) 查准率 ( 召回率 R ) = T P T P + F N 查准率(召回率R)=\frac {TP} {TP+FN} 查准率(召回率R)=TP+FNTP预测出的真正的正样本占据所有真实正样本的比例。
特异度TNR T N R = T N T N + F P TNR=\frac {TN} {TN+FP} TNR=TN+FPTN预测出的负样本中,真正的负样本占了多少比重

通过二级指标的转换,混淆矩阵的指标就成功转到0-1之间了。但是有一个新的问题出现了,这些二级指标某种意义上有些独立,就好比说查全率P和查准率R来说,当要追求一个较高时,另一个就会降低。所以需要出现三级指标,来通过某种方式,让二级指标中的某几个指标尽量整体最优。

三级指标

F1-Score

F 1 − S c o r e = 2 P R P + R F1-Score=\frac {2PR} {P+R} F1Score=P+R2PR
P就是查全率,R就是查准率。F1-Score综合考虑了这两个指标,输出1表示模型表示最好,0则表示最差。

ROC(AUC)

  首先要知道ROC曲线的横纵坐标是什么
在这里插入图片描述
其中坐标说明如下:

TPR(真正样本率) T P R = T P T P + F N TPR=\frac {TP} {TP+FN} TPR=TP+FNTP
FPR(假正样本率) F P R = F P F P + T N FPR=\frac {FP} {FP+TN} FPR=FP+TNFP

如何理解这两个指标的含义呢?先看个图。
在这里插入图片描述

蓝色的区域是负样本所在的区域,而红色的区域是正样本所在的区域。横坐标可以认为是一些概率值
当我们在做样本预测的时候,会得到一个概率值,我们就是通过这个概率值去判定是否是正样本的。

在判定正负样本的前提是我们需要事先设定一个阈值,只有当预测值大于阈值时,才是正样本
在这里插入图片描述

假设黑色的这条竖线就是我们划定的阈值,那么大于黑色的部分才是正样本,而小于黑色的部分才是负样本,所以我箭头标出的两个实际样本分布重叠的那部分因为大于阈值,所以预测时候被判定为正样本,而实际上他是负样本,这就是FPR假正样本率,而右侧不重叠的地方才是真正样本率。

那么当我们设定一个阈值时就得到一对TPR,FPR,设定不同的阈值就会得到不同的FPR,TPR。然后把素有的点(FPR,TPR)绘制出来,就得到了ROC(下图左上角就是ROC曲线)。
在这里插入图片描述

也可以看下图
在这里插入图片描述
  绿色线就是ROC曲线,ROC曲线和横坐标围成的面积就是AUC。
AUC的物理意义可以理解为不管是以什么阈值划分正负样本,模型对真实样本的整体的区分能力,当为0.5时,表示模型没啥作用,当为1时,表示最好。
在这里插入图片描述

PR曲线

献上图
在这里插入图片描述

横坐标为查准率(Recall),
查全率(精确率Precision)

这是从另一个角度去决定模型的能力,

  1. 查全率决定了模型要尽可能的召回真正的正样本
  2. 而查准率则表示召回的样本不要太多.但是要足够准确.
    所以综合来看,PR曲线就是综合考虑了,模型要尽可能的召回所有的正样本,但又不能预判错误得太多.

通俗的说,有的人捞鱼的时候,为了尽可能的捞到自己想要的小于,这时候就把渔网孔调小,自然小于就会被打上来(Recall变大),但是同时不想要的大鱼也会被打上来(Precision变小).所以P-R曲线就是在综合考虑这个问题.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

推荐算法评价指标(ACC、查全率、查准率、F1-Score、ROC、AUC,P-R) 的相关文章

随机推荐

  • px4.launch apm.launch放哪儿

    安装了MAVROS之后 xff0c 经常要启动px4 launch 或 apm launch 有时候修改其中内容为默认更方便 但是文件在哪里呢 xff1f span class token function sudo span span c
  • UAV021(六):系统架构优化、SBUS协议、遥控器控制电机转动

    目录 序一 系统架构优化1 1 从全局变量到API函数1 2 函数传值 二 SBUS协议读取及解析2 1 协议格式2 2 协议解析2 3 程序设计2 3 1 头文件一览2 3 2 串口配置与捕获解析Sbus帧2 2 3 数据解析细节2 3
  • 理解与证明“线性无关的特征向量的个数=若当块个数”

    1 1 问题 若当标准形中 xff0c 有一条性质说 xff1a 一个矩阵的线性无关的特征向量个数等于其若当标准形的若当块个数 结论是简洁的 xff0c 证明是有复杂的 1 2 理解与证明 首先说明 xff0c 以下的 n n n 阶方阵
  • 证明:不同特征值对应的特征向量线性无关

    证明 设 1
  • [rosrun] Couldn‘t find executable named *** below ***

    ROS编译成功 xff0c 能够找到包 xff0c 但是找不到节点 xff0c 报错 span class token punctuation span rosrun span class token punctuation span Co
  • Keil使用ST-Link下载程序总是 Internal command error 解决方法

    Keil下载程序 xff0c 死活都是Internal command error xff0c 让人几近崩溃 网上选择 Pre Reset办法 按住复位键这些都没用 此处解决办法 xff1a ST Link与板子不仅需要连接 GND SCK
  • 拉普拉斯变换解微分方程

    使用拉普拉斯变换解一阶 二阶微分方程 一 核心内容 拉氏变换对 时域s域 e a t
  • 采样频率变化时,滤波器的性能会变差吗?

    一 问题来源 飞控需要采集加速度计与陀螺仪数据进行低通滤波 xff0c 一般以1kHz频率采集 xff0c 即采样频率为1kHz 使用二阶巴特沃兹低通滤波器进行滤波 xff0c 截至频率可设置为20Hz 滤波器的输入参数一般是采样频率 截至
  • Carsim2019与Simulink (Matlab2018b)联合仿真成功(超详细)

    首先 xff0c 想吐槽一下 xff0c 一些教程和英文帮助文档一样 xff0c 逐个介绍界面按钮 xff0c 人都被转晕了也进入不了主题 终于 xff0c 看了UP主自动驾驶废材的 xff1a 从零开始搭建carsim与simulink联
  • 基于xr871机器人故事机设计原理和方法 图灵后台

    原创 xff1a http blog csdn net kylin fire zeng xff0c 欢迎转载分享 xff0c 共同进步 xff0c 但请注明出处啊 xff0c 尊重他人成果
  • GPS速度测量

    GPS使用M8N xff0c 放在地上一两分钟 xff0c 举起来 xff0c 放下 xff0c 举高走一走 xff0c 放下 可见 xff0c GPS可以测量NED系下各周速度 但是 z 轴速度收敛慢 xff0c 不是很准确 也可能GPS
  • GPS经纬度转距离

    function span class token punctuation span pN span class token punctuation span pE span class token punctuation span spa
  • STM32 移植Mavlink,Keil报错

    STM32 移植Mavlink xff0c Keil报一大堆错误 span class token keyword static span span class token keyword void span span class toke
  • Linux之串口接收响应试验

    问题来源 仪表作为从机时 xff0c 需要分析仪表的响应速度 但发现采用linux或windows开发时发现串口响应较慢 在网上没有查到相关的资料 xff0c 于是在手上的linux产品上进行试验 xff08 iMAX6Q xff09 试验
  • 用TCP模拟网页服务器开发记录

    一 所需要撑握的技术 xff1a 1 TCP 下的socket应用 2 多线程动态创建 xff0c 实现多个客户端的同时访问 3 了解html的语法结构和javaScript的开发 4 了解http数据包格式 包括json get post
  • 安装docker

    安装docker 参考网站 xff1a https docs docker com install linux docker ce ubuntu sudo apt get update sudo apt get install apt tr
  • 自动化控制行业常见面试问题分析

    一 系统建模 xff0c 二 经典控制与现代控制 xff0c 三 自动检测 xff0c 四 过程控制 xff0c 五 计算机控制 xff0c 六 微机原理 xff0c 七 电子技术综合 xff0c 八 电机控制 xff0c 九 专业英语名词
  • glibc 下载及编译

    glibc下载站点 http ftp gnu org pub gnu glibc 下载点 http www gnu org software libc bugs html 官网 uclibc下载站点 https downloads ucli
  • 树莓派镜像制作

    前言 本文主要讲诉如何制作一个树莓派的启动镜像 xff08 本人使用的是4b 43 xff09 镜像下载 镜像下载64bit xz文件大小在756M xff0c 解压后镜像3 95个G 上面的镜像下载比较慢 xff0c 可以使用国内的镜像源
  • 推荐算法评价指标(ACC、查全率、查准率、F1-Score、ROC、AUC,P-R)

    文章目录 混淆矩阵二级指标三级指标F1 ScoreROC AUC PR曲线 推荐系统的评价指标很多 xff0c 今天介绍 xff1a 准确率 ACC 查准率 P精确率 查全率 R召回率 F1 score AUC值 xff0c ROC曲线 P