推荐系统论文重要的三个指标——Recall、NDCG、RMSE

2023-05-16

1.Recall

Recall(召回率)
大小反应了用户感兴趣的信息有多少被我们感知到了
R e c a l l = ∑ u ∈ U R ( u ) ∩ T ( U ) ∑ u ∈ U T ( u ) Recall = \frac{\sum_{u\in U}{R(u) \cap T(U)}}{\sum_{u\in U}{T(u)}} Recall=uUT(u)uUR(u)T(U)
精确率precision:
p r e c i s i o n = ∑ u ∈ U R ( u ) ∩ T ( U ) ∑ u ∈ U R ( u ) precision = \frac{\sum_{u\in U}{R(u) \cap T(U)}}{\sum_{u\in U}{R(u)}} precision=uUR(u)uUR(u)T(U)
R ( u ) R(u) R(u)表示根据用户在训练集上的行为给用户做出的Top-n推荐列表;
T ( u ) T(u) T(u)表示系统向用户推荐物品后,用户实际选择的物品集;

2.NDCG

CG(Cumulative Gain,累计增益):
C G K = ∑ i = 1 K r e l i CG_K = \sum_{i=1}^{K}rel_i CGK=i=1Kreli
CG就是将推荐列表中的每个推荐结果(相关性分数)累加;但有可能出现一个列表中,高分的排到低位,低分的排到高位;

DCG(Discounted Cumulative Gain,折损累计增益):
D C G K = ∑ i = 1 K r e l i − 1 l o g 2 ( i + 1 ) DCG_K = \sum_{i=1}^{K} \frac{rel_i-1}{log_2(i+1)} DCGK=i=1Klog2(i+1)reli1
由于CG没有考虑每个推荐结果处于不同位置对整个推荐效果的影响,DCG引入位置影响因素,对于排名靠后推荐结果的推荐效果进行“打折处理”;

NDCG(Normalized Discounted Cumulative Gain,归一化折损累计增益):

我们在评估一个推荐系统的时候,不单单只对一个用户的推荐列表进行评估,而是对整个测试集的用户的推荐列表进行整体的一个评估,所以不同的用户的推荐列表的评估分数就需要进行归一化
N D C G u @ K = D C G u @ K I D C G u NDCG_u@K = \frac{DCG_u@K}{IDCG_u} NDCGu@K=IDCGuDCGu@K
I D C G u IDCG_u IDCGu指推荐系统为某一用户返回的最好推荐结果列表;

整体的平均NDCG:
N D C G @ K = ∑ u ∈ U N D C G @ K U NDCG@K = \frac{\sum_{{u\in U}}NDCG@K}{U} NDCG@K=UuUNDCG@K

3.RMSE

RMSE(Root Mean Square Error,均方根误差)
R M S E ( X , h ) = 1 m ∑ i = 1 m ( h ( x i ) − y i ) 2 RMSE(X,h) = \sqrt{ \frac{1}{m}\sum_{i=1}^{m}(h(x_i)-y_i)^2} RMSE(X,h)=m1i=1m(h(xi)yi)2
均方根误差是用来衡量观测值同真实值之间的偏差,RMSE越小越好

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

推荐系统论文重要的三个指标——Recall、NDCG、RMSE 的相关文章

  • webpack中的加载器(loader)

    一 了解webpack加载器 1 webpack加载器 xff08 loader xff09 的作用 在实际开发过程中 xff0c webpack默认只能打包处理以 js后缀名结尾的模块 xff0c 其他非 js后缀名结尾的模块 xff0c
  • python画图(线条颜色、大小、类型:点、虚线等)(图文详细入门教程四)

    初衷 本人由于平常写论文需要输出一些结果图 xff0c 但是苦于在网上搜python画图时 xff0c 详细的教程非常多 xff0c 但是就是找不到能马上解决自己问题那一行代码 xff0c 所以打算写一些适合需求简单的朋友应急用的教程 xf
  • Linux常用命令详解 xfs文件系统的备份与还原 xfsdump和xfsrestore命令详解

    Linux常用命令详解 xfs文件系统的备份与还原 xfsdump和xfsrestore命令详解 一 引言 1 xfsdump xff1a xfs文件系统的备份 2 xfsstore xff1a xfs文件系统的还原 二 命令具体介绍与用法
  • 小白入门gitee(码云)

    文章目录 一 介绍二 注册账户三 本地环境的配置1 如果是在linux系统2 如果是windows系统 四 本地代码库的操作1 基本概念2 命令操作 五 远程代码库的操作1 下载远程代码库的代码2 同步远程仓库 xff08 上传代码 xff
  • ubuntu:安装cmake后查看版本报错:CMake Error: Could not find CMAKE_ROOT !!!

    问题描述 xff1a ubuntu18原来安装过cmake xff0c 想升级下版本 xff0c 在安装新版本的cmake完成后 xff0c 输入指令 xff1a cmake version 查看版本号时出现以下错误 xff1a CMake
  • g++ 编译选项

    返回主页 lsgxeva MyGitee https gitee com lsgx MyGithub https github com lsgxeva 博客园首页新随笔联系订阅管理 随笔 437 文章 0 评论 1 GCC 警告 优化以及调
  • STM32CubMx+FreeRTOS互斥锁和递归互斥锁(五)

    文章目录 FreeRTOS系统一 简绍二 STM32CubMx配置1 准备2 添加互斥锁2添加递归互斥锁 三 互斥锁1 代码2 测试 四 递归互斥锁1 代码2 测试 FreeRTOS系统 一 简绍 互斥锁 xff0c 谁获得的消息谁来释放
  • ESP8266-12F最小系统板程序烧录

    文章目录 ESP8266一 简介二 准备1 ESP8266 12F系统板2 转接板3 USB转串口模块4 烧录软件 三 连接烧录四 下载 ESP8266 一 简介 前一段时间一直用ESP8266 12F开发板来学习开发 xff0c 但是最近
  • ESP8266+0.96OLED驱动显示(I2C)

    文章目录 ESP8266一 简介二 管脚定义三 代码 ESP8266 一 简介 这篇我们说一下ESP8266来驱动OLED显示屏显示 xff0c 这里使用的是I2C的屏幕 xff0c 像Arduino中有好几个库可以驱动屏幕 xff0c 但
  • Node.js超详细指南(一)

    文章目录 一 概述二 Node js的特点1 异步I O2 事件驱动3 单线程4 支持微服务 三 Node js下载与安装安装步骤验证安装是否正确 一 概述 Node js的官方开发语言是JavaScript JavaScript是前端开发
  • Linux未设置root初始密码怎么办?

    问题描述 xff1a Linux未设置初始密码 xff0c 无法从用户状态切换到root状态怎么办 xff1f 是不是遇上下面的情况 xff1a 解决方案 xff1a 使用下列命令进行修改root密码 sudo passwd root
  • 计算机体系结构——功能部件

    一 功能部件 加法器 1 全加器 全加器 将两位本地二进制数和1位低位进位的数进行相加 xff0c 求的1位本地结果以及1位向高位进位的结果 简单来说就是3个input xff0c 2个output xff0c 这里的逻辑比较简单 xff0

随机推荐