导读
易用又强大的推荐算法框架伯乐(RecBole)发布全新版本啦!
这些成果持续激励着我们的团队不断进步,向着国际一流推荐系统工具库的目标迈进!
在认真总结了用户的反馈后,我们的团队前后召开了三十多次会议进行讨论。最终,我们决定对现有的伯乐框架进行重新设计,并花费近2个月时间进行了一次大规模的代码重构!在伯乐团队和海内外众多开发者的共同努力下,今天,RecBole三期(v1.0.0)终于来啦!
话不多说,直接来看看本次的更新内容吧!
更新亮点
1. 代码结构优化
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. 支持数据集文件自动下载
在新版本中,我们基于TensorBoard对模型运行结果进行了可视化,方便用户更直观的分析实验情况。
在新版本中,我们对使用文档进行了优化。我们调整了文档结构,并添加了更多的使用示例,方便用户快速上手RecBole。我们添加和更新了“如何加载预训练参数”,“如何保存和加载模型”,“如何使用新数据集”,“如何运行新模型”等使用场景的例子,具体目录如下:
更新详情
本次更新主要为新特性添加(New Features),问题修复(Bug Fixes)和代码重构(Code Refactor)三类,更新详情如下表:
更详细的信息请参考我们的GitHub项目的Release Note。
社区维护
截至2021年9月16日,RecBole已经收获1.2k个star,198次fork,并解决了146个issue,RecBole已经成为一款知名度较高的推荐算法库。
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).