首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当与推荐项目的相关性是二进制形式时,我们可以使用NDCG作为推荐系统度量吗?

当与推荐项目的相关性是二进制形式时,我们可以使用NDCG(Normalized Discounted Cumulative Gain)作为推荐系统度量。

NDCG是一种常用的评估指标,用于衡量推荐系统的排序质量。它结合了推荐项目的相关性和排序的影响,能够更准确地评估推荐结果的质量。

在二进制相关性情况下,推荐项目的相关性只有两种取值,通常是0和1,表示不相关和相关。NDCG通过计算推荐列表中每个项目的相关性得分,并考虑到其在排序中的位置,从而评估推荐系统的性能。

NDCG的计算公式如下: NDCG@k = DCG@k / IDCG@k

其中,DCG@k表示在推荐列表中前k个项目的折损累计增益(Discounted Cumulative Gain),IDCG@k表示理想情况下的折损累计增益。

推荐系统的目标是使得相关性高的项目排在前面,因此NDCG值越高,表示推荐系统的性能越好。

在实际应用中,NDCG可以用于评估各种类型的推荐系统,包括电商推荐、新闻推荐、音乐推荐等。对于推荐系统开发工程师来说,了解和使用NDCG可以帮助他们评估和改进推荐算法的效果。

腾讯云提供了一系列与推荐系统相关的产品和服务,例如腾讯云人工智能平台(https://cloud.tencent.com/product/ai),可以帮助开发者构建和部署高效的推荐系统。此外,腾讯云还提供了云原生、数据库、服务器运维等一系列产品和服务,可以满足云计算领域的各种需求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

推荐系统评价:NDCG方法概述

我们在前段时间已经使用了平均精度均值(MAP)。NDCG表示归一化折损累积增益。两者之间的主要区别是,MAP认为二元相关性(一个感兴趣的或者不感兴趣的),而NDCG允许以实数形式进行相关性打分。...在这种情况下,你可以计算出更糟糕情况下DCG的归一化(它将小于零),或者仍然使用作为下限值,具体要视情况而定。 反馈形式 有两种类型的反馈形式:显性反馈和隐性反馈。显性反馈表示用户率。...隐式反馈不常以计数的形式出现,例如用户听一首歌的次数是多少。MAP只是一种二元反馈指标,而NDCG可以在任何情况下使用,你可以推荐指定相关分数(二元、整数或是实数)。...一般来说,预测率用户和因子之间的点积我们可以采取因子和解决系统的线性方程组来估计用户因子。这相当于拟合一个线性回归模型。...该交叉点提供了使用两个系统组合的一种可能性。最初我们采用的第一个系统获得的反馈大于阈值我们切换到另一个系统。在这里,给出少许评价数蓝色会表现的更好,但评价数大约50个就会收敛。

2.2K80

变分自编码器如何淘汰经典的推荐系统

第一个将是NDCG,它衡量质量和我们推荐目的顺序。我们首先需要定义DCG。DCG越高越好。DCG@p定义为: ? I指示函数,elem_i代表推荐列表的第i个元素。...优点 「无冷启动」:推荐系统(RS)中经常出现的问题之一冷启动。添加新项目或用户,会出现此问题。由于没有可供推断的先前活动,推荐系统给的推荐就会有点生硬。...在我们的场景中,一个项目的交互次数并不影响它最终被推荐的可能性,这意味着涉及到新项目我们不存在冷启动问题。 「实现简单」:如上图所示,使用几行伪代码,算法相当简单。...在不进行预处理的情况下,每次要求系统向用户推荐新内容,它都必须找到用户交互的每个项目最接近的k个项目。...我们可以推断,对于较大的数据集,这种方法往往会过拟合。 「查询时间O(#items)」:此方法的问题之一,对于给定的用户,我们需要解析所有项目。项目数量增加,这可能会成为一个可伸缩性问题。

1.3K20
  • XGB4:Xgboost学习排序

    MAP 平均精度(Mean average precision MAP)一个二进制度量标准。相关性标签为0或1可以使用它。目标的名称是 rank:map。...本节包含一些有关如何选择超参数的提示,作为起点。可以通过调整这些超参数来进一步优化模型。 首先要考虑的问题如何选择手头任务相匹配的目标。...如果输入数据具有多级相关度度量,那么应该使用 rank:ndcg 或 rank:pairwise。然而,输入具有二进制标签,有多个基于目标度量的选项。...由于NDCG一个多级度量,通常会生成比MAP更多的有效对数。 然而,存在足够多的有效对时,[6] 表明将目标度量目标函数匹配重要的。...目标度量为MAP且您使用可以提供足够多有效对的大型数据集,rank:map 在理论上可以产生比 rank:ndcg 更高的MAP值。

    33521

    推荐系统中的排序学习

    这里我们这里只看矩阵分解。「当然BPR中的预测的分数无论在显示反馈还是隐式反馈情境下,都只是用来辅助度量相对排序,其评分并不作为实际的意义上的评分。」...对于 这个式子,我们要满足 , , 反之 , ,最简单的表示这个性质的方法就是 而 , ,就是我们的矩阵 对应位置的值。...而在抽象成损失函数,RankNet实际上引入了概率的思想:不是直接判断 排在 前面,而是说 以一定的概率P排在 前面,即是以预测概率真实概率的差距最小作为优化目标。...可以看到 ,模型预测的相关性分数 比 越大,其损失函数的值越小; , 比 越小,损失函数的值越小; ,损失函数的最小值在 相等处取得。...由此便产生了多种目标,那如何将多种目标综合到一个模型里面进行学习,这就是推荐系统的多目标学习,而排序学习可以作为多目标学习的一种方法。

    2.5K52

    推荐系统相关效果评测指标总结

    但是传统评测相异的推荐系统具有没有传统意义上的输入输出,模型、算法等中间过程难以介入,一切的效果与性能目的都需要落地到提升用户体验等特点,这给评测带来了较大难度。...三、评测方案指标总结 对于不同的推荐系统评测方式,我们需要使用不同的指标对其进行衡量: 1、模型离线实验 离线实验目的旨在对算法进行评价,所以评价指标强相关使用推荐算法,传统的评分预测问题通常使用均方根误差...除此之外,在参考文献【2】中还提到惊喜度、信任度、实时性和鲁棒性这些指标可以作为推荐系统的评测指标,但是目前的研究还缺乏有效的标准对这些进行度量,大多还采用MOS评分的方式进行评测。...NDCG可以直译为归一化折损累积增益,其主要思想对用户选择的前rtag进行收益打分,以Top-K tag质量判定整个提取算法的算法质量。 CG(Cumulative Gain,累计增益) ?...之后我们可以计算归一化的折损累积增益,也就是使用DCG除以最理想抽取的DCG值,综合上述算法原理,则NDCG评测方法公式可以表示为下式: ?

    9.3K31

    【排序学习】基于Pairwise和Listwise的排序学习

    在排序学习任务中,我们介绍基于RankLoss损失函数Pairwise排序模型和基于LambdaRank损失函数的Listwise排序模型(Pointwise学习策略见PaddleBook中推荐系统一课...排序学习的主要目的对给定一组文档,对任意查询请求给出反映相关性的文档排序。...将Ui相关性比Uj好的概率记做Pi,j,则 ? 由于排序度量函数大多数非连续,非光滑,因此RankNet需要一个可以优化的度量函数C。首先使用交叉熵作为度量函数衡量预测代价,将损失函数C记做 ?...数据格式注意 数据中每条样本对应的文档数量都必须大于lambda_cost层的NDCG_num 若单条样本对应的文档都为0,文档相关性都为0,NDCG计算无效,那么可以判定该query无效,我们在训练中过滤掉了这样的...本例实验数据中的特征向量为查询-文档对的联合特征,使用查询和文档的独立特征,可参考DSSM构建网络。

    16.5K103

    SIGIR2021 | 基于排序的推荐系统度量优化新视角

    本文分享一篇SIGIR’21的推荐系统文章:基于排序的推荐系统度量优化新视角。...通过四个数据集上的实验结果得到了以下观点: 使用同样的指标进行优化和评测基于排序的推荐系统并不总能得到最好的推荐性能。...根据上图结果可看出:1)优化RR性能较差,即便评测指标使用的也是RR,2)在pairwise的情况下,优化p=0.95的nRBP性能由于p=0.8/0.9的性能,3)优化nDCG,AP,nRBP性能差不多...通过上图显示,最好的pairwise和listwise性能都是在优化nRBP得到。说明nRBP作为优化指标有效的。...1)在pairwise方法上,有大量的活跃用户可用于训练,优化nDCG和AP比优化nRBP.95更有优势,2)在listwise方法上,相比于nDCG和AP,在CiteULike数据集上优化nRBP

    78460

    推荐系统遇上深度学习(二十一)--阶段性回顾

    推荐系统中,CG即将每个推荐结果相关性(relevance)的分值累加后作为整个推荐列表(list)的得分。即 ?...而我们评估一个推荐系统,不可能仅使用一个用户的推荐列表及相应结果进行评估, 而是对整个测试集中的用户及其推荐列表结果进行评估。...假设样本的 n个特征属于 f个field,那么FFM的二次有 nf个隐向量。而在FM模型中,每一维特征的隐向量只有一个。FM可以看作FFM的特例,把所有特征都归属到一个field的FFM模型。...下图中MLR模型用4个分片可以完美地拟合出数据中的菱形分类面。 ? 在实际中,MLR算法常用的形式如下,使用softmax作为分片函数: ?...Dice激活函数 使用PRelu作为激活函数,存在一个问题,即我们认为分割点都是0,但实际上,分割点应该由数据决定,因此文中提出了Dice激活函数。

    2.8K30

    构建可以查找相似图像的图像搜索引擎的深度学习技术详解

    在本文中将介绍如何查找相似图像的理论基础并且使用一个用于查找商标的系统为例介绍相关的技术实现,本文提供有关在图像检索任务中使用推荐方法的背景信息。...使用用户上传的图像,通过模型获得嵌入,并将该嵌入数据库(索引)中的其他图像的嵌入进行比较,并且搜索结果可以按照相关性排序。...它的主要度量建立索引的速度、搜索的速度和消耗的内存。 最简单的方法直接使用嵌入向量进行暴力的搜索,例如使用余弦距离。但是有数据量很大就会出现问题——数百万、数千万甚至更多。...优点:对precision@k中数字k的敏感性消失,度量变得稳定缺点:必须知道查询请求相关的样本总数(如果不是所有相关的都被标记,会产生问题) 3、Recall@k 在 top-k 中找到的相关项目的比例...优点:客观稳定的检索质量评价缺点:必须知道请求相关的样本的总数 5、nDCG (Normalized Discounted Gain) 该度量显示了 top-k 中的元素在它们之间的排序是否正确。

    1.1K20

    机器学习-07-分类回归和聚类算法评估函数

    Precision和Recall一对矛盾又统一的指标,分类阈值越高,模型的精确率越高,相反召回率越低。...MSE(Mean Square Error) MSE真实值预测值的差值的平方然后求和平均。通过平方的形式便于求导,所以常被用作线性回归的损失函数。...NDCG 首先介绍CG(累计收益),模型会给推荐的每个item打分表示当前用户的相关性。...NDCG(归一化折损累计增益),表示推荐系统对所有用户推荐结果DCG的一个平均值,由于每个用户的排序列表不一样,所以先对每个用户的DCG进行归一化,再求平均。...其归一化时使用的分母就是IDCG,指推荐系统为某一用户返回的最好推荐结果列表,即假设返回结果按照相关性排序,最相关的结果放在前面,此序列的DCG为IDCG。

    22910

    谷歌推出TF-Ranking:用于排序算法的可扩展TensorFlow库

    排序,一种适用于搜索引擎、系统推荐以及机器翻译等的重要操作。 在诸如此类的应用程序中,研究人员经常使用一组名叫Learning to Rank的有监督机器学习技术。...因此,任何对构建真实世界数据密集型排名系统(如Web搜索或新闻推荐)感兴趣的人都可以使用TF-Ranking作为强大,可扩展的解决方案。 经验评估任何机器学习或信息检索研究的重要组成部分。...TensorBoard中显示的训练步骤(X轴)的NDCG度量(Y轴)的示例。 它显示了训练期间指标的总体进度。 可以直接在仪表板上比较不同的方法。 可以根据指标选择最佳模型。...无偏(unbiased)Learning to Rank 先前的研究表明,给定一个项目的排序列表,用户更有可能与前几个结果交互,而不会考虑它们的相关性。...TF-Ranking丰富的TensorFlow生态系统完美集成。 如上所述,你可以使用Tensorboard可视化NDCG和MRR等排名指标,以及使用这些指标选择最佳模型检查点。

    72330

    【干货】搜索和其他机器学习问题有什么不同?

    假设按均值来说,我们的预测跟实际股价的误差在1美元到2美元之间,我们可以认为系统预测的很好。 这种情况下的误差我们称之为残差,即实际值预测值之间的差异:实际值-预测值。...但表象可能骗人的,单文档学习排名的一个问题获得正确排序的头部通常比判断列表尾部的模糊更加重要。基本上所有认知和位置偏差在最大化度量(如NDCG)下都会被忽略。...实际上,一个经常交换精准相关和不太相关,但可以准确地预测第50页较低的相关性等级的模型并不是很好。买家在前几个结果中看了些勉强相关的项目且没有被其打动,所以他们离开了。...综上所述,(1)该项在判断列表很重要(TopOneP(doc.grade)很高),并且当我们的rangking函数f的TopOneP很低,会产生更多的误差。...在图形中,你可以看到,使用线性回归运行上述相同的数据: ? RankSVMList-Wise方法 你可以看到, RankSVM似乎仍然创建一个直接的、线性的相关性我们知道现实往往是非线性的。

    1.1K20

    【干货】搜索和其他机器学习问题有什么不同?

    假设按均值来说,我们的预测跟实际股价的误差在1美元到2美元之间,我们可以认为系统预测的很好。 这种情况下的误差我们称之为残差,即实际值预测值之间的差异:实际值-预测值。...但表象可能骗人的,单文档学习排名的一个问题获得正确排序的头部通常比判断列表尾部的模糊更加重要。基本上所有认知和位置偏差在最大化度量(如NDCG)下都会被忽略。...实际上,一个经常交换精准相关和不太相关,但可以准确地预测第50页较低的相关性等级的模型并不是很好。买家在前几个结果中看了些勉强相关的项目且没有被其打动,所以他们离开了。...综上所述,(1)该项在判断列表很重要(TopOneP(doc.grade)很高),并且当我们的rangking函数f的TopOneP很低,会产生更多的误差。...在图形中,你可以看到,使用线性回归运行上述相同的数据: ? RankSVMList-Wise方法 你可以看到, RankSVM似乎仍然创建一个直接的、线性的相关性我们知道现实往往是非线性的。

    96510

    推荐 | 微软SAR近邻协同过滤算法拆解(二)

    一旦我们具有共生矩阵,就可以通过根据给定度量重新缩放共现来获得项目相似性矩阵 :Jaccard, lift, and counts (就是计数,其实等于没改变,没压缩/缩放)....) 累积增益CG,推荐系统中CG表示将每个推荐结果相关性的分值累加后作为整个推荐列表的得分: 其中,rel表示位置i的推荐结果的相关性,k表示推荐列表的大小。...DCG在CG的基础上引入了位置影响因素,计算公式如下: 从上面的式子可以得出:1)推荐结果的相关性越大,DCG越大。2)相关性好的排在推荐列表前面的话,推荐效果越好,DCG越大。...DCG针对不同的推荐列表之间很难进行横向评估,而我们评估一个推荐系统不可能仅使用一个用户的推荐列表及相应结果进行评估,而是对整个测试集中的用户及其推荐列表结果进行评估。...IDCG表示推荐系统某一用户返回的最好推荐结果列表, 即假设返回结果按照相关性排序, 最相关的结果放在最前面, 此序列的DCG为IDCG。

    1.1K20

    LambdaLoss | Google排序学习优化框架

    有些工作已经证明「优化这些损失」的结果「真正排序度量指标」的界,即实际回归或分类损失函数排序度量指标误差(度量指标取相反数)的上界[3],不断最小化损失函数这一上界,能够达到最小化度量指标误差的目的...框架中,使用高斯分布作为排序分布,等价于我们熟知的[4]方法,而使用Plackett-Luce作为排序分布,等价于我们熟知的ListNet[5]算法。...所以可以直接加到损失函数中);第二其实就是NDCG( , ),这么定义是因为下文推导方便。 因为: ,有: 同理可得,LmabdaLoss损失为: 上述问题 太大,上界太松了。...最后可以推导出NDCG第二种形式的损失(「关键」): 上式的好处在于,可以通过重新定义 和 来扩展出很多NDCG-like metrics的LambdaLoss。...如果纯从逼近优化ndcg的目标,文中也推导出了ndcg-loss1和ndcg-loss2的表达式,其作为NDCG度量指标误差的上界,能够比lambdaRank更紧。

    2.1K30

    动态 | 谷歌开源 TF-Ranking:专用于排序学习的可扩展 TensorFlow 库

    TF-Ranking 快速且易用,并能创建高质量的排序模型,对构建 web 搜索或新闻推荐等基于真实世界数据的排序系统感兴趣的人,都可以将 TF-Ranking 作为强稳的、可扩展的解决方案。...排序一种以最大化整个列表效用为目的,对项目列表进行排序的过程,适用于搜索引擎、推荐系统、机器翻译、对话系统,甚至还能用于计算生物学等众多领域。...因此,任何对构建 web 搜索或新闻推荐等基于真实世界数据的排序系统感兴趣的人,都可以将 TF-Ranking 作为强稳的、可扩展的解决方案。 经验评估所有机器学习或信息检索研究的重要组成部分。...无偏见排序学习 此前的研究(https://ai.google/research/pubs/pub45286)表明,给定一个项目的排序列表,用户更有可能重点查看前面几个结果,而忽略结果之间的相关性。...如上所述,你可以使用 Tensorboard 将 NDCG 和 MRR 等排序评价指标可视化,以及使用这些评价指标选择最佳模型检查点。

    92530

    谷歌出品 | TIGER:生成式检索推荐系统

    另一方面,序列推荐器,它们明确考虑了用户-item交互的顺序,最近也很流行。训练,它们还通常在输出层中使用softmax,并在推理转向使用ANN。 作者提出一种序列推荐器的生成检索模型的新范式。...这提供了一种替代高维度最近邻搜索或softmax推荐系统的方法。 (2)展示了TIGER在多个数据集上优于现有SOTA推荐系统的召回率和NDCG度量。...3.2 使用语义ID的生成检索 通过按照用户之交互的item的时间顺序对每个用户构建item序列。然后,给定形式为(item1,...,item)的序列,推荐系统的任务预测下一个项目item+1。...最后,检索一组前K个候选项,文中引入一个超参数,该参数指定最大比例的未看到的item被选择。 在图5中将TIGERK最近邻(KNN)方法在冷启动推荐设置中的性能进行了比较。...4.4.2 推荐多样性。 虽然Recall和NDCG评估推荐系统的主要指标,但预测多样性也是另一个重要的目标。预测多样性较差的推荐系统可能对用户的长期参与造成损害。

    1.1K10

    推荐 | 微软SAR近邻协同过滤算法解析(一)

    我们可以将所有项目的共现表示为 (代表item个数) 共现矩阵 具有以下特性: 对称的,所以 非负的: 事件至少同时发生的一样大.即,每行(和列)的最大元素位于主对角线上...: lift: counts: 通常,使用 counts 作为相似性度量有利于可预测性,这意味着大多数时候都会推荐最受欢迎的项目.相反的....SAR包含两个可能影响用户亲和力的因素: 它可以通过不同事件的不同加权来考虑关于用户交互的类型的信息(例如,它可以权衡用户对特定项目评级比用户查看项目的事件更重的事件)....当用户项目事件发生,它可以考虑关于的信息(例如,它可以折扣在遥远的过去发生的事件的价值....将这些因素形式化为我们提供了用户亲和关系的表达式: 亲和力 代表第 用户和第 个item所有 事件(包括第 用户和第 个item) 的加权和。

    1.2K10

    独家 | 从零开始用python搭建推荐引擎(附代码)

    尾注 1 什么推荐引擎? 一直到现在,人们也会倾向于买朋友或者信任的人推荐商品。对某个商品有任何疑问,人们往往会采用这种方式。...但是,算法如何理解选择和推荐电影的类型呢? 以Netflix为例:它们以向量形式保存每个用户相关的所有信息。...有大量的用户,它并不有效,因为计算所有用户对之间的相似性需要花费大量的时间。这就产生了商品-商品的协同过滤,当用户数量远远超过推荐商品的数量,这种算法是非常有效的。...所以在这个例子中NDCG将是1因为推荐的产品用户相关。 NDCG值越大,推荐效果越好 9 还可以尝试什么? 到目前为止,我们已经了解了什么推荐引擎以及它的不同类型和它们的工作方式。...我们也针对每种技术联系到对应的现实问题,作为一个想要学习如何制作推荐引擎的人,我建议您学习本教程中讨论的技术,并在您的模型中实现它们。 你觉得这篇文章有用可以在下方评论分享出你的观点!

    1.9K40

    推荐系统遇上深度学习(十六)--详解推荐系统中的常用评测指标

    最近阅读论文的过程中,发现推荐系统中的评价指标真的五花八门,今天我们就来系统的总结一下,这些指标有的适用于二分类问题,有的适用于对推荐列表topk的评价。...可以看到,TP和TN我们预测准确的样本,而FP和FN为我们预测错误的样本。...对于AP可以用这种方式理解: 假使当我们使用google搜索某个关键词,返回了10个结果。当然最好的情况这10个结果都是我们想要的相关信息。...在推荐系统中,CG即将每个推荐结果相关性(relevance)的分值累加后作为整个推荐列表(list)的得分。...而我们评估一个推荐系统,不可能仅使用一个用户的推荐列表及相应结果进行评估, 而是对整个测试集中的用户及其推荐列表结果进行评估。

    1.1K00
    领券