RecBole安装遇到的坑

写在前面

  • 本文基于v1.1.1版本。
  • 包括了recbole2.0相关库的安装,仅供个人学习使用。
  • 使用过程中遇到no module named xxx,直接pip安装即可,遇到问题再百度。

安装

recbole主页:https://recbole.io/cn/index.html
小白入门博客:https://blog.csdn.net/Turinger_2000/article/details/111182852

入门博客中的安装步骤很详细,这里不再赘述。

  • 第一种方式通过conda/pip安装,conda安装不一定成功,建议选择pip方式安装。

正常运行 dataset=ml-100k model=BPR 即说明环境ok,运行dataset=ml-10m model=BPR :
在这里插入图片描述
报错了:在这里插入图片描述
查看数据集的相关描述,作者是实现了自动下载数据集的功能的:
在这里插入图片描述
这里需要更改一下源代码,D:\Program Files\Anaconda\Lib\site-packages\recbole\utils\url.py这个文件。原文链接https://blog.csdn.net/weixin_35757704/article/details/121060229
在这里插入图片描述
这样就可以实现自动下载了,如果没出现这个问题,可以跳过。作者仅在Api文档中写了自动下载方法,可能还是推荐用户自行下载。

  • 第二种方式通过源代码直接下载,我也是用的这个方法,便于看代码改文件。

这个是我的项目目录结构,其中RecBole-GNN-main是recbole2.0的GNN库,RecBole-master是V1.1.1的源代码,数据集是自行下载的(按需移入),这样的话run_recbole_gnn调用的是RecBole-master的代码。根目录下的文件是对应不同类型模型的配置文件。
在这里插入图片描述
如果要跑新的图神经网络模型,就用RecBole-GNN-main
(需要用到其他的2.0库就去https://github.com/RUCAIBox这里找):
在这里插入图片描述
跑其他的模型,就用RecBole-master:
在这里插入图片描述

使用

在使用的时候,除了环境出过错,只遇到一个错误:
在这里插入图片描述
在这里插入图片描述
loss类型是CE的时候train_neg_sample_args应该为空,再看api文档:

在这里插入图片描述
根据文档调整参数:
在这里插入图片描述

设置training_neg_sample_num  = 0 
train_neg_sample_args: None

仍然无法解决,于是修改源代码:
在这里插入图片描述
成功运行:
在这里插入图片描述

总结

RecBole是一个很牛的框架,造福众多百姓。本文所提到的安装和使用遇到的问题可能只是偶然现象。但也使我在解决的过程中不断学习。同时也希望更多人能够了解这个框架,使用这个框架,以后遇到问题,再做分享。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐