8个扩展子包!RecBole推出2.0!
易用又强大的推荐算法框架伯乐(RecBole)又双叒叕发布新版本啦!
在伯乐1.0的基础上,本次更新我们推出RecBole2.0,包括 8 个最新扩展包!覆盖从数据到模型多个推荐系统最新的主题和方向!为推荐系统多个领域的研究提供易用又强大的工具库!
还不知道RecBole是什么?快点击下方链接了解一下!
伯乐:一个易用、强大的 Pytorch 推荐系统开源库
作为一个拥有从数据处理、模型开发、算法训练到科学评测的一站式全流程托管框架,伯乐从第一天正式发布起,截至今天,已经正式发布运营了约19个月。在此期间,社区活跃度稳定持续上升,用户数量不断增长,我们的 github repro 已经获得了1.9k个star和364个fork。在此基础上,我们团队不断对其进行扩展和更新,从数据和模型两个角度进行扩展,针对不同的研究方向,今天RecBole推出八个扩展工具包:
面向数据,我们关注三个重要的研究课题:数据稀疏性、数据偏差和数据分布偏移,针对这三个数据问题,我们开发了五个基准工具包,分别对应元学习(RecBole-MetaRec),数据增强(RecBole-DA),去偏(RecBole-Debias),公平性(RecBole-FairRec)和跨域推荐(RecBole-CDR)。
面向模型,我们考虑为基于新兴的模型架构的推荐算法提供更多支持,开发了两个基准工具包,分别为基于Transformer的模型(RecBole-TRM)和基于图神经网络的模型(RecBole-GNN),除此之外,我们针对人岗匹配开发了一个应用工具包(RecBole-PJF)。
此次发布我们共开发完成了65个推荐系统模型,并全部提供了相对应的数据、模型和评测等接口,对于伯乐而言是一次极大的扩展。经过此次扩展,伯乐成为了更加全面的推荐系统算法库,共覆盖130+推荐系统模型和11个不同的任务。
论文地址:
https://arxiv.org/pdf/2206.07351
项目主页地址:
https://recbole.io
一期github(主站):
https://github.com/RUCAIBox/RecBole
二期github(本次发布):
https://github.com/RUCAIBox/RecBole2.0
更新亮点
1. RecBole-DA — 数据增强
此工具包针对序列推荐实现和开发了三种类型的数据增强方法,实现了基于数据增强场景下推荐系统,增加增广策略的选择和配置,包括启发式方法、基于模型的方法和混合方法,共包括7个不同的数据增强模型。
2. RecBole-MetaRec — 元学习
此工具包旨在帮助元学习推荐领域的研究人员比较和开发相关模型,实现了基于元学习推荐系统的数据处理框架、模型训练框架、模型评测框架和元学习相关模块,分别实现了预测、参数化、embedding三种模型,共包括7个元学习推荐系统模型。
3. RecBole-Debias — 去偏
此工具包旨在复现和开发去偏的推荐系统算法,针对推荐系统中常见的选择偏差、流行度偏差和曝光偏差共实现6个不同的去偏模型供参考。此外,提供2个真实无偏数据集(Yahoo!R3 / KuaiRec)和一个半合成数据集( ML-100k )用于模型训练评估,以及新的通用的数据加载模块。
4. RecBole-FairRec — 公平性
此工具包旨在复现和开发 fairness-aware 的推荐算法,实现4个公平性推荐模型,并实现了针对用户方和物品方多种角度的一系列公平性评测指标,包括基尼指数、普及率等。此外,还具有可自定义公平性评测指标的灵活性和可扩展性。
5. RecBole-CDR — 跨域推荐
此工具包旨在复现和开发cross-domain推荐系统算法,实现了三类模型,包括协同矩阵分解类、表示共享类以及知识迁移映射类,共实现10个跨域推荐模型。其支持自动或手动方式为源域和目标域数据进行对齐,通过四种训练方式的自由组合支持现有的绝大多数跨域推荐模型。
6. RecBole-GNN — 图神经网络
此工具包针对基于图神经网络的推荐模型,基于 PyG/DGL 等成熟 GNN 库开发了一系列高效率、可复用、易拓展的数据结构和基础网络,针对图协同过滤、序列化推荐和社会化推荐三种不同的任务,分别开发并实现了共16个图神经网络模型。SR-GNN 等序列化推荐模型单轮训练耗时仅为原实现的 1/10 - 1/3。
7. RecBole-TRM — 基于Transformer的推荐
此工具包基于现有RecBole框架的通用配置,旨在复现和开发基于Transformer的推荐算法,根据任务的不同分为两类模型:序列推荐和新闻推荐,共实现8个主要算法模型。
8. RecBole-PJF — 人岗匹配
此工具包旨在开发和复现针对人岗匹配的推荐算法,针对双边推荐设计数据和评测接口,提供多种文本数据加载方式,模型分为三类:基于协同过滤的模型、基于内容的模型以及混合模型,共实现8个人岗匹配算法模型。
快速上手
本次发布的各个子包分别独立,但使用接口均与伯乐一期类似,非常易于上手使用,没有使用过的小伙伴可以参考如下链接:
https://blog.csdn.net/Turinger_2000/article/details/111182852
在一期的基础上,我们对其进行扩展,各个子包的使用示例如下图所示:
关于伯乐二期更加详细的介绍,可参照我们的github链接(见上文)。
致谢
伴随着伯乐的一次又一次更新迭代,我们也收到了非常多的开发者的帮助和建议,也很开心地见证了RecBole在许多研究工作中得到应用,我们的团队也会继续努力,不断对伯乐进行更新和改进,使其朝着更前沿、更全面、更灵活易用的方向发展。
再次衷心感谢所有向我们提出问题和发展建议的朋友们,希望RecBole可以在大家的帮助和敦促下越做越好。
Reference
[1] Zhao W X, Mu S, Hou Y, et al. Recbole: Towards a unified, comprehensive and efficient framework for recommendation algorithms[C]//Proceedings of the 30th ACM International Conference on Information & Knowledge Management. 2021: 4653-4664.
[2] Zhao W X, Hou Y, Pan X, et al. RecBole 2.0: Towards a More Up-to-Date Recommendation Library[J]. arXiv preprint arXiv:2206.07351, 2022.
更多推荐
KDD 2022 | 我们离通用预训练推荐模型还有多远?推荐系统的通用序列表示学习模型 UniSRec