文章目录

  • Recbole简介
  • Recbole使用
  • 自定义训练集、验证集和测试集

Recbole简介

Recbole(中文名称:伯乐)是一款使用Python开发的开源推荐框架,里面集成了大量的推荐模型,例如BPR、NeuMF、NGCF、LightGCN等等。

中文介绍网址为:

  • https://recbole.io/cn/model_list.html

在Recbole中提供了按比例划分数据集的方式(例如训练集0.8,验证集0.1,测试集0.1),同时在2.0版本也提供了自定义训练集、验证集和测试集的方式。

Recbole使用

关于Recbole的使用,在官网介绍的很详细了。我这里直接将github上的工程下载了下来,导入了pycharm。如下图所示:

其中,标红的dataset用于放数据集。例如,我的数据集只有三列,即用户-产品–评分。

doctor.inter的内容如下:

user_id:token    item_id:token   rating:float
0   0   1
0   1   1
0   2   1
0   3   0
...

针对这种数据,我们需要修改配置文件:

其中,sample.yaml修改如下,我们只需要user_id,item_id,rating类型的数据。

可以利用其中的BPR等模型开展实验。

自定义训练集、验证集和测试集

在Recbole自定义训练集、验证集和测试集使用的是配置文件sample.yaml。在配置文件的最后一行,存在一个字段benchmark_filename。我们可以通过这个字段来针对事先划分好的数据集进行实验。


例如,这里的part1为训练集,part2为验证集,part3为测试集。

假如程序中使用的数据集目录为standard,则在该目录下需要存在以下三个文件,如下图所示:

我们运行以下程序:

可以正在跑出模型对应的推荐结果。

Recbole自定义训练集、验证集和测试集推荐相关推荐

  1. 【小白学PyTorch】 2.浅谈训练集验证集和测试集

    文章目录: 经验误差与过拟合 评估方法 经验误差与过拟合 关键词:错误率(error rate),精度(accuracy). 错误率好理解,就是m个样本中,a个样本分类错误,则错误率E = a/m . ...

  2. 机器学习典型步骤以及训练集、验证集和测试集概念

    1. 机器学习典型步骤 数据采集和标记 数据清洗 特征选择 如房子的面积.地理位置.朝向.价格等. 模型选择 有监督还是无监督,问题领域.数据量大小.训练时长.模型准确度等多方面有关. 模型训练和测试 ...

  3. 【入门篇】如何正确使用机器学习中的训练集、验证集和测试集?

    [注] ·本文为转载文章,原文作者是王树义老师,原文链接为 https://zhuanlan.zhihu.com/p/71961236 训练集.验证集和测试集,林林总总的数据集合类型,到底该怎么选.怎 ...

  4. 训练集、验证集和测试集的意义

    原文 在有监督的机器学习中,经常会说到训练集(train).验证集(validation)和测试集(test),这三个集合的区分可能会让人糊涂,特别是,有些读者搞不清楚验证集和测试集有什么区别. I. ...

  5. 训练集、验证集和测试集的概念及划分原则

    深度学习中,常将可得的数据集划分为训练集(training set),验证集(development set/validation set)和测试集(test set).下文主要回答以下几个问题:一是 ...

  6. 训练集、验证集和测试集这三个名词的区别

    训练集.验证集和测试集这三个名词在机器学习领域极其常见,但很多人并不是特别清楚,尤其是后两个经常被人混用. 在有监督(supervise)的机器学习中,数据集常被分成2~3个,即:训练集(train ...

  7. YOLOv5将自己数据集划分为训练集、验证集和测试集

    在用自己数据集跑YOLOv5代码时候,需要将自己的VOC标签格式数据集转为yolo格式. 首先是要获取自己的数据集,然后再对数据集进行标注,保存为VOC(xml格式).然后再把标注完的数据集划分为训练 ...

  8. 如何正确使用机器学习中的训练集、验证集和测试集?

    王树义 读完需要 19 分钟 速读仅需7分钟 训练集.验证集和测试集,林林总总的数据集合类型,到底该怎么选.怎么用?看过这篇教程后,你就能游刃有余地处理它们了. 1 问题 审稿的时候,不止一次,我遇到 ...

  9. 什么是训练集、验证集和测试集?

    在机器学习中,训练集.验证集和测试集是数据集的三个重要部分,用于训练.评估和测试机器学习模型的性能.它们的定义和作用如下: 什么是训练集.验证集和测试集? 训练集:训练集是机器学习模型用于训练和学习的 ...

最新文章

  1. Cross-site Scripting (XSS) 阅读笔记
  2. Spark任务提交后是如何完成提交过程的?源码解析!
  3. Keras 深度学习框架中文文档
  4. K-means算法和矢量量化
  5. 如何找tensorflow-gpu版本对应的cuda和cudnn
  6. opencv给视频打马赛克
  7. SQL Server性能调优--优化建议(二)
  8. multisim14安装后怎么汉化(超详解)
  9. 芯片行业相关公司及就业岗位汇总
  10. Typora 一款非常简洁,非常适合程序员使用的markdown文档书写工具
  11. 你为什么要进入IT行业呢?
  12. 机器学习——支持向量机support vector machine
  13. 数学基础_若要使骰子(六个面)的每个数都出现至少一次,那么平均需要掷多少次骰子?
  14. 安全测试那些事儿......
  15. 华邦存储芯片 W25Q 系列命名规则
  16. ARM Linux 内核 panic 之cache 一致性 ——cci-400 cache一致互联
  17. AutoCAD中ObjectARX C++常用的方法
  18. 最优化技术——单纯形法
  19. 学习笔记0601----mysql主从
  20. 精致又小巧的3款黑科技软件,一旦使用,难以割舍

热门文章

  1. 使用CSS控制段落首行缩进
  2. Nginx限制对代理HTTP资源的访问速率
  3. ZooKeeper程序员指南--使用ZooKeeper开发分布式应用程序
  4. 如何在CentOS 7上安装和配置MySQL Cluster
  5. 解决python中TypeError: not enough arguments for format string
  6. Linux——安全权限(禁止添加新用户+umask值+修改默认密码最长有效期)
  7. 【生活】我的2019年度总结
  8. 开发人员kpi怎么写_为什么开发人员应该知道怎么写
  9. 自助银行服务系统项目开发_自助服务时代即将结束
  10. java运行时内存分配详解