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

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

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

最真实的开发者用云体验

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

让创作激发创新

资深技术专家手把手带教

遇见技术追梦人

技术交流,直击现场

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

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

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

为开发者定制的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.推荐系统常用数据集delicious2k推荐系统常用数据集 首先需要说明一下推荐系统数据中的几个类别: Item: 即我们要推荐的东西,如产品、电影、网页或者一条信息片段 User:对item进行评分以及接受推荐系统推荐的项目的人 Rating:用户对item的偏好的表达。评分可以是二分类的(如喜欢和不喜欢),也可以是整数(如1到5星)或连续(某个间隔的任何值)。 https://blog.csdn.net/qq_28966711/article/details/89608390
2.推荐系统常用数据集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
3.推荐系统常见数据集liujy1推荐系统常见数据集 Douban:http://socialcomputing.asu.edu/datasets/Douban这是一个匿名的豆瓣数据集,包含129,490个独立用户和58,541个独立电影条目。 Epinions:http://www.trustlet.org/epinions.htmlEpinions是一个人们可以评论产品的网站。 Flixster:http://socialcomputing.asu.edu/datasets/FlixsterFlixster是一https://www.cnblogs.com/laojifuli/p/12126302.html
4.知识图谱的推荐系统数据集wx5cac1bacddda7的技术博客知识图谱在推荐系统中可以用于丰富用户和物品的信息,从而提高推荐的精度和个性化程度。以下是一些包含知识图谱信息的推荐系统数据集的示例: Freebase数据集:Freebase是一个开放的知识图谱,包含了大量实体之间的关系信息。您可以使用Freebase数据来构建知识图谱推荐系统的数据集。 https://blog.51cto.com/u_14282855/8648588
5.数据挖掘数据集iris还有什么帆软数字化转型知识库在数据挖掘中,除了著名的Iris数据集外,还有许多其他常用的数据集可以用于各种分析和机器学习任务。这些数据集包括:Titanic数据集、MNIST数据集、CIFAR-10数据集、Wine数据集、Adult数据集。Titanic数据集是一组关于1912年泰坦尼克号沉船事故的乘客数据,常用于分类和生存分析。Titanic数据集不仅包含乘客是否幸存的信息,还包括https://www.fanruan.com/blog/article/581042/
6.机器学习快速入门数据集划分(二)这种数据集划分方法叫"留出法"。留出法一般采用70%的数据用于训练,剩下30%的数据用于测试模型的"性能"(准确率等等指标),该方法也是最常用的方式之一。 2.2 k折交叉验证法 有同学可能会想到,如果得到的数据集巨大,是否可以取其中的一部分当做数据集,然后对该子数据集进行划分训练集与测试集? 当然可以!假设数据集https://www.bilibili.com/opus/1012874127334178854
7.面向推荐系统的图卷积网络?5 总结与展望 本文解决的问题是如何为推荐系统设计更合理的图卷积网络算法.首先根据信息利用方式的不同,将现有 基于图卷积网络的推荐算法分类为异质顶点交互算法和同质顶点交互算法,而两类方法都忽略了两者间的互 助.正是为了两者能够互惠互利,本文提出了一种联合利用异质和同质交互图的图卷积网络算法.真实数据集上 https://jos.org.cn/jos/ch/reader/create_pdf.aspx?file_no=5928&journal_id=jos