文章全文首发:码农的科研笔记(公众号)
RecBole是由AI Box团队开发的基于Pytorch的推荐系统算法库。该框架从数据处理、模型开发和算法训练都有涉及,能方便进行算法构建和实验对比。
数据组织形式
RecBole约定了一个统一、易用的数据文件格式,并已支持 28 个 benchmark dataset。同时可以选择使用数据集预处理脚本,或直接下载已被处理好的数据集文件。recbole有一个默认的数据集 ml-100k 存在目录 ./RecBole/dataset/ml-100k
中,官方doc给出的所有例子都是直接加载的这个数据集。
ml-100k.item:item_id:token movie_title:token_seq release_year:token class:token_seq
例如: 1 Toy Story 1995 Animation Children's Comedy
ml-100k.user: user_id:token age:token gender:token occupation:token zip_code:token
例如: 1 24 M technician 85711
ml-100k.inter: user_id:token item_id:token rating:float timestamp:float
例如: 196 242 3 881250949
RecBole典型数据文件如下,其中针对不同类型推荐算法所需数据文件会有所不同。
后缀 | 含义 | 例子 |
---|---|---|
.inter | 用户-商品交互特征 | user_id, item_id, rating, timestamp, review |
.user | 用户特征 | user_id, age, gender |
.item | 商品特征 | item_id, category |
.kg | 知识图谱三元组 | head_entity, tail_entity, relation |
.link |