RecBole安装遇到的坑
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是一个很牛的框架,造福众多百姓。本文所提到的安装和使用遇到的问题可能只是偶然现象。但也使我在解决的过程中不断学习。同时也希望更多人能够了解这个框架,使用这个框架,以后遇到问题,再做分享。
更多推荐
所有评论(0)