秒懂算法推荐系统常用数据集和验证方法

丰富的线上&线下活动,深入探索云世界

做任务,得社区积分和周边

最真实的开发者用云体验

让每位学生受益于普惠算力

让创作激发创新

资深技术专家手把手带教

遇见技术追梦人

技术交流,直击现场

海量开发者使用工具、手册,免费下载

极速、全面、稳定、安全的开源镜像

开发手册、白皮书、案例集等实战精华

为开发者定制的Chrome浏览器插件

在推荐系统领域,科研人员对用户的各种行为数据进行了较为深入的研究,主要包括以下几种类型:

(1)显式反馈,例如用户对物品的1~5分的数值评分(numericalrating)行为和喜欢/不喜欢的二值评分(binaryrating)行为,以及点赞(like)等单值行为;

(2)隐式反馈(又称为单类反馈),例如用户对物品的点击(click)、浏览(browse/view/examination)、收藏(collect/favorite)、加入购物车(add-to-cart)和购买(purchase)等行为;

(3)异构反馈,例如同时包含两种或两种以上的显式反馈和/或隐式反馈;以及

(4)序列反馈,例如在隐式反馈中包含时序信息。

需要说明的是,在一个真实的应用中,为了更加准确地学习用户偏好,我们除了需要考虑上述的多类型行为(multi-typebehavior),还可以考虑:

(1)多方面行为(multi-aspectbehavior),如用户对物品的价格、质量和售后服务等不同方面的反馈;

(2)多粒度行为(multi-granularitybehavior),如用户对商品、品牌、商家和品类等不同粒度的反馈;

(4)多领域行为(multi-domainbehavior),如用户在电商、资讯和社交等不同领域的行为。

Netflix电影评分数据集也是一个推荐算法研究中常用的历史比较悠久的数据集,由电影租赁网站Netflix在2005年底发布,用于Netflix百万美元竞赛,以激励人们设计和开发更好的推荐算法。Netflix数据集中包含了在1998年10月至2005年12月期间,480189个匿名的Netflix用户对17770部电影的99,072,112条评分记录(包含评分日期),并且包含了电影的标题和发行年份信息。

对于不考虑序列信息的推荐问题,我们可以使用交叉验证法(crossvalidation)来对模型进行训练和验证,具体方法为:对于一个数据集,将它随机分成k(例如k=5)个大小相同的子集,每次取其中一个子集作为测试集,其余k-1个子集共同构成训练集,如此重复次,最后取在k个不同测试集上的结果的平均值作为最终的评估结果。注意,在一些算法中,我们可能需要先使用一个较小的验证集来寻找最优的模型参数,这种情况下,我们可以先固定一个测试集作为验证集来进行调参。

留一法(leave-one-out)是交叉验证法的一个特例,即将数据集中的每个样本都分到一个不同的子集中(即k等于数据集的大小),只选取一个样本用作测试,其余数据全部用于训练。在推荐算法研究中,留一法多用于引入序列信息的情况。通常,为了评估模型对用户行为序列的预测能力,我们将每个用户的最后一次行为记录划入测试集,其余记录划入训练集。注意,在进行正式的模型测试前,为了调节模型参数,可以将每个用户的倒数第二次行为记录划入一个新增加的验证集,然后使用剩下的训练集数据来训练模型并观察在各参数下的表现。

在推荐技术的验证中,比较主流的模型效果验证方法包括强泛化效果验证和弱泛化效果验证。强泛化效果验证先对用户进行划分从而得到训练集用户图片、验证集用户图片和测试集用户图片,使得图片,再将每一位用户的交互数据划分到对应的数据中。显然,验证集用户和测试集用户的交互数据没有出现在训练过程中,因此模型需要具备较强的泛化能力才能获得较好的推荐效果。弱泛化效果验证则将每一位用户的交互数据按照设定的阈值划分到训练集、验证集和测试集中,因此验证集用户和测试集用户在训练过程中会以训练集用户的角色出现并参与到训练过程中。显而易见,弱泛化效果验证在验证和测试模型效果时,需要衡量模型在每一个用户上的推荐效果,当用户数目较多时,这种验证方式相较于强泛化效果验证而言效率较低,并且由于验证集用户和测试集用户在训练中已经出现并参与了训练,因此弱泛化验证对模型泛化能力要求相对较低。

THE END
1.(13301)服装推荐系统:数据集处理——初步分析推荐系统的数据集文章浏览阅读1.2k次,点赞15次,收藏14次。在"notebooks" 目录中保存了和数据处理相关的Notebook文件:data_cleaning.ipynb、eda_feature_eng.ipynb和initial_analysis.ipynb。_推荐系统的数据集https://blog.csdn.net/asd343442/article/details/137874137
2.推荐系统之基于内容的推荐算法:BM25:数据集构建与管理.docx推荐系统之基于内容的推荐算法:BM25:数据集构建与管理.docx 19页内容提供方:找工业软件教程找老陈 大小:33.13 KB 字数:约1.75万字 发布时间:2024-09-05发布于辽宁 浏览人气:13 下载次数:仅上传者可见 收藏次数:0 需要金币:*** 金币 (10金币=人民币1元)https://max.book118.com/html/2024/0904/8073030126006123.shtm
3.推荐系统常用数据集1. Criteo 数据集 criteo数据集用于广告点击率预估任务(标签:0/1);其中包含13个dense特征和26个sparse特征; 数据格式如下:第一列为label, 之后分别是13个dense特征(integer feature),26个sparse特征(categorical feature);每列之间使用tab进行分隔。 <integer feature1><integer feature13><categorical feature1https://www.jianshu.com/p/5c88f4bd7c71
4.知识图谱的推荐系统数据集wx5cac1bacddda7的技术博客知识图谱在推荐系统中可以用于丰富用户和物品的信息,从而提高推荐的精度和个性化程度。以下是一些包含知识图谱信息的推荐系统数据集的示例: Freebase数据集:Freebase是一个开放的知识图谱,包含了大量实体之间的关系信息。您可以使用Freebase数据来构建知识图谱推荐系统的数据集。 https://blog.51cto.com/u_14282855/8648588
5.伯乐,一个统一全面高效的推荐系统代码库我们实现了百余种常用的推荐算法,并提供了43个推荐数据集的格式化副本。 大规模的标准评测 我们支持一系列被广泛认可的评估方式来测试和比较不同的推荐算法。 RecBole 是一个基于 PyTorch 实现的,面向研究者的,易于开发与复现的,统一、全面、高效的推荐系统代码库,它可以通过 pip, conda 和源文件三种途径安装,使https://recbole.io/cn/
6.融合用户属性信息的冷启动推荐算法AET在实验数据集1上,实验结果如表1。 其中,pearson-knn是采用pearson相关系数作为相似性度量,基于用户(50个邻居)的推荐评分预测方法;MF是采用simon funk提出的矩阵分解的方法(10个潜在因子);FP(fused preference)是本文提出的方法。可见,在一般数据集上,FP和MF性能接近,优于基于用户的协同过滤的方法。 http://www.chinaaet.com/article/3000073409