基于Pytorch的开源推荐算法库

2021 年 10 月 12 日 机器学习与推荐算法

导读

Rec Bole 你用过了吗?
是否通过它体验到了轻松复现推荐模型的爽快?
是否因为它而跳过了数据处理的纷繁复杂?
是否通过它快速入门推荐系统?


易用又强大的推荐算法框架伯乐(RecBole)发布全新版本啦!

不知不觉,距离上次伯乐二期发布,已经过了半年之久。在这期间,我们的用户数量持续增长,社区活跃度也迅速提升,我们的GitHub repro已经获得了1.2k个star和198个fork。同时,我们的工作也于今年8月份被CIKM2021 Resource Track 正式录用[1]。


这些成果持续激励着我们的团队不断进步,向着国际一流推荐系统工具库的目标迈进!


在认真总结了用户的反馈后,我们的团队前后召开了三十多次会议进行讨论。最终,我们决定对现有的伯乐框架进行重新设计,并花费近2个月时间进行了一次大规模的代码重构!在伯乐团队和海内外众多开发者的共同努力下,今天,RecBole三期(v1.0.0)终于来啦!

   

话不多说,直接来看看本次的更新内容吧!


       

 更新亮点 


1. 代码结构优化

我们对Dataloader, Sampler, Evaluation等模块进行了优化和重构:

Module
Old
New
Dataset
数据划分模式较为固定,只支持三段式划分(train-validation-test), 且Sequential Dataset不支持按比例划分。 数据划分模式更加灵活,支持train-valid, train-test两段式划分,Sequential Dataset也可以支持按比例划分。
Dataloader
21个类,较为冗余。 简化为8个类,便于开发维护。
Sampler 仅使用静态数表生成随机数,随机性不足且存在潜在Bug;难以扩展客制化的采样策略。
调整随机数生成算法,同时使用Alias Table进行采样速度优化,并支持更好地支持多种客制化采样策略。
Evaluation 全排序评测和采样评测流程独立,用户无法添加客制化指标,评测加速逻辑存在局限性。 统一了全排序评测和采样评测流程,支持用户客制化的指标开发并添加了non-accuracy的评测指标,优化了加速逻辑。


2. 支持数据集文件自动下载

在旧版本中,用户运行模型前需要自行准备数据集文件。尽管我们已经预处理了28个常用的推荐数据集并将他们的原子文件上传至网盘供用户下载,但这仍然不够便捷。在新版本中,用户在运行模型时会自动触发我们的数据集下载模块,帮助用户自动下载我们预处理好的数据集原子文件,下载流程对用户透明,也极大的节约了用户的时间。


3.支持TensorBoard的结果可视化

在新版本中,我们基于TensorBoard对模型运行结果进行了可视化,方便用户更直观的分析实验情况。

     


4.优化使用文档

在新版本中,我们对使用文档进行了优化。我们调整了文档结构,并添加了更多的使用示例,方便用户快速上手RecBole。我们添加和更新了“如何加载预训练参数”,“如何保存和加载模型”,“如何使用新数据集”,“如何运行新模型”等使用场景的例子,具体目录如下:



 更新详情


本次更新主要为新特性添加(New Features),问题修复(Bug Fixes)和代码重构(Code Refactor)三类,更新详情如下表:


更详细的信息请参考我们的GitHub项目的Release Note。


 社区维护


截至2021年9月16日,RecBole已经收获1.2k个star,198次fork,并解决了146个issueRecBole已经成为一款知名度较高的推荐算法库。




RecBole的不断成长离不开我们的开发团队。本次伯乐三期开发团队名单如下(同类别排名按拼写首字母排序):


Lead developer: 陈昱硕,潘星宇

Core developer: 冯志超,侯宇蓬,林子涵,田长鑫

Participant: 田震,徐澜玲,岳文静,张景森


我们的团队一直保有着认真负责的工作态度和不怕吃苦的工作精神,并一直向着将RecBole打造为国际知名推荐算法库的目标而努力奋斗。我们仍将继续公开招募开发团队成员,从贡献单一代码到核心模块的开发,都欢迎大家的加入。欢迎小伙伴们联系recbole@outlook.com加入我们~




RecBole的不断更迭也离不开社区用户的支持和帮助,在这半年内,我们持续关注着用户的反馈,积极地在GitHub社区中回复issue和discussion,并认真汲取着用户的建议和意见。同时,我们也收到了许多用户的积极评价。




在这里我们感谢下列GitHub开发者,他们或是我们提出了非常深刻有用的建议,或是向我们的项目提交了很棒的代码,为RecBole的成长做出了很大贡献。他们是: @Tokkiu,@juyongjiang。我们也衷心感谢所有向我们提出问题,指明发展方向和提供发展建议的朋友们,RecBole的蓬勃发展离不开每个用户的支持,希望RecBole可以在大家的帮助和敦促下越做越好。








以上就是RecBole三期的主要更新内容啦!还在等什么呢?马上安装RecBole框架,体验一下船新版本吧!


Reference

[1]Wayne Xin Zhao, Shanlei Mu, Yupeng Hou, Zihan Lin, Kaiyuan Li, Yushuo Chen,Yujie Lu, Hui Wang, Changxin Tian, Xingyu Pan, Yingqian Min, Zhichao Feng,Xinyan Fan, Xu Chen, Pengfei Wang, Wendi Ji, Yaliang Li, Xiaoling Wang, andJi-Rong Wen. 2020. RecBole: Towards a Unified, Comprehensive and Efficient Framework for Recommendation Algorithms. arXiv preprint arXiv:2011.01731(2020).

登录查看更多
1

相关内容

对话推荐算法研究综述
专知会员服务
47+阅读 · 2022年2月18日
专知会员服务
12+阅读 · 2021年8月8日
[SIGIR2021]可复现推荐系统评估的全面和严谨的框架
专知会员服务
21+阅读 · 2021年4月30日
专知会员服务
26+阅读 · 2021年4月22日
【经典书】数据结构与算法,770页pdf
专知会员服务
140+阅读 · 2021年4月15日
专知会员服务
88+阅读 · 2021年4月12日
专知会员服务
40+阅读 · 2021年4月3日
【WWW2021】场矩阵分解机推荐系统
专知会员服务
31+阅读 · 2021年2月27日
《深度学习》圣经花书的数学推导、原理与Python代码实现
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
GRecX: 高效统一的图推荐框架再度升级, 深度优化基准推荐算法
机器学习与推荐算法
0+阅读 · 2021年12月8日
推荐系统领域13个开源工具总结
机器学习与推荐算法
1+阅读 · 2021年12月7日
咚咚咚!你期待的RecBole三期来了!
机器学习与推荐算法
0+阅读 · 2021年9月17日
Pytorch多模态框架MMF
专知
49+阅读 · 2020年6月20日
Github 项目推荐 | PyTorch 实现的 GAN 文本生成框架
AI研习社
35+阅读 · 2019年6月10日
Github项目推荐 | PyTorch 中文手册 (pytorch handbook)
TorchSeg:基于pytorch的语义分割算法开源了
极市平台
20+阅读 · 2019年1月28日
Python推荐系统框架:RecQ
专知
12+阅读 · 2019年1月21日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
5+阅读 · 2013年12月31日
国家自然科学基金
4+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Arxiv
0+阅读 · 2022年4月19日
Arxiv
0+阅读 · 2022年4月19日
Arxiv
0+阅读 · 2022年4月19日
VIP会员
相关VIP内容
对话推荐算法研究综述
专知会员服务
47+阅读 · 2022年2月18日
专知会员服务
12+阅读 · 2021年8月8日
[SIGIR2021]可复现推荐系统评估的全面和严谨的框架
专知会员服务
21+阅读 · 2021年4月30日
专知会员服务
26+阅读 · 2021年4月22日
【经典书】数据结构与算法,770页pdf
专知会员服务
140+阅读 · 2021年4月15日
专知会员服务
88+阅读 · 2021年4月12日
专知会员服务
40+阅读 · 2021年4月3日
【WWW2021】场矩阵分解机推荐系统
专知会员服务
31+阅读 · 2021年2月27日
《深度学习》圣经花书的数学推导、原理与Python代码实现
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
相关资讯
GRecX: 高效统一的图推荐框架再度升级, 深度优化基准推荐算法
机器学习与推荐算法
0+阅读 · 2021年12月8日
推荐系统领域13个开源工具总结
机器学习与推荐算法
1+阅读 · 2021年12月7日
咚咚咚!你期待的RecBole三期来了!
机器学习与推荐算法
0+阅读 · 2021年9月17日
Pytorch多模态框架MMF
专知
49+阅读 · 2020年6月20日
Github 项目推荐 | PyTorch 实现的 GAN 文本生成框架
AI研习社
35+阅读 · 2019年6月10日
Github项目推荐 | PyTorch 中文手册 (pytorch handbook)
TorchSeg:基于pytorch的语义分割算法开源了
极市平台
20+阅读 · 2019年1月28日
Python推荐系统框架:RecQ
专知
12+阅读 · 2019年1月21日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
5+阅读 · 2013年12月31日
国家自然科学基金
4+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Top
微信扫码咨询专知VIP会员