暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
ReChorus__综合高效易扩展的轻量级推荐算法框架-王晨阳,任一,马为之,张敏,刘奕群,马少平.pdf
297
9页
0次
2022-05-19
免费下载
软件学报 ISSN 1000-9825, CODEN RUXUEW E-mail: jos@iscas.ac.cn
Journal of Software, 2022,33(4):14301438 [doi: 10.13328/j.cnki.jos.006473] http://www.jos.org.cn
©中国科学院软件研究所版权所有. Tel: +86-10-62562563
ReChorus: 综合高效易扩展的轻量级推荐算法框架
王晨阳
1,2
,
1,2
,
马为之
1,2
,
1,2
,
刘奕群
1,2
,
马少平
1,2
1
(清华大学 计算机科学与技术系, 北京 100084)
2
(北京信息科学与技术国家研究中心(清华大学), 北京 100084)
通信作者: 张敏, E-mail: z-m@tsinghua.edu.cn
: 近年来, 各种各样的推荐算法层出不穷, 特别是深度学习的发展, 极大地推动了推荐系统的研究. 然而,
各个推荐算法在实现细节、评价方式、数据集处理等方面存在众多差, 越来越多的研究者开始对推荐领域的可
复现性产生担忧. 为了帮助缓解上述问题, 基于 PyTorch 实现了一个综合、高效、易扩展的轻量级推荐算法框架
ReChorus, 意为构建一个推荐算法的合唱团”. ReChorus 框架中实现了多种不同类型的推荐算法, 别涵盖常规
推荐、序列推荐、引入知识图谱的推荐、引入时间动态性的推荐等; 同时, 对于一些常见的数据集也提供统一的
预处理范式. 相比其他推荐系统库, ReChorus 在保证综合高效的基础上尽可能做到了轻量实用, 同时具有较高的
可扩展性, 尤其以方便学术研究为导向, 非常容易上手实现新的模型. 不同的推荐算法在 ReChorus 框架中能够在
相同的实验设定下进行训练和评测, 从而实现推荐算法间的有效对比. 该项目目前已在 GitHub 发布: https://
github.com/THUwangcy/ReChorus.
关键词: 推荐系统; 深度学习; 可复现性; 推荐算法框架; 软件工具包
中图法分类号: TP18
中文引用格式: 王晨阳, 任一, 马为之, 张敏, 刘奕群, 马少平. ReChorus: 综合高效易扩展的轻量级推荐算法框架. 软件学
, 2022, 33(4): 1430–1438. http://www.jos.org.cn/1000-9825/6473.htm
英文引用格式: Wang CY, Ren Y, Ma WZ, Zhang M, Liu YQ, Ma SP. ReChorus: Comprehensive, Efficient, Flexible, and
Lightweight Framework for Recommendation Algorithms. Ruan Jian Xue Bao/Journal of Software, 2022, 33(4): 14301438 (in
Chinese). http://www.jos.org.cn/1000-9825/6473.htm
ReChorus: Comprehensive, Efficient, Flexible, and Lightweight Framework for Recommendation
Algorithms
WANG Chen-Yang
1,2
, REN Yi
1,2
, MA Wei-Zhi
1,2
, ZHANG Min
1,2
, LIU Yi-Qun
1,2
, MA Shao-Ping
1,2
1
(Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China)
2
(Beijing National Research Center for Information Science and Technology (Tsinghua University), Beijing 100084, China)
Abstra ct : In recent years, many recommendation algorithms have been proposed, and the research of recommender system has been
greatly boosted with the development of deep learning. However, concerns about the reproducibility in this field have increasingly arisen
in the research community, owing to the slight but influential differences between recommendation algorithms, such as implementation
details, evaluation protocols, dataset splitting, etc. To address this issue, ReChorus is presented, of which it is a comprehensive, efficient,
flexible, and lightweight framework for recommendation algorithms based on PyTorch, with aims to form a “Chorus” of recommendation
algorithms. In this framework, a wide range of recommendation algorithms of different categories is implemented, covering general
recommendation, sequential recommendation, knowledge-aware recommendation, and time-aware recommendation. ReChorus also
provides the paradigm of dataset preprocessing for some common datasets. Compared to other recommendation algorithm libraries,
基金项目: 国家重点研发计划(2018YFC0831900); 国家自然科学基金(61672311, 61532011, 62002191); 清华大学国强研究院
资助
本文由面向开放场景的鲁棒机器学习专刊特约编辑陈恩红教授、李宇峰副教授、邹权教授推荐.
收稿时间: 2021-05-25; 修改时间: 2021-07-16; 采用时间: 2021-08-27; jos 在线出版时间: 2021-10-26
王晨阳 : ReChorus: 综合高效易扩展的轻量级推荐算法框架
1431
ReChorus is featured for that it strives to keep lightweight while unifies as many as different algorithms at the same time. ReChorus is
also flexible, efficient, and easy to use, especially for research purposes. Researchers will find it effortless to implement new algorithms
with ReChorus. Such a framework can help to train and evaluate different recommendation models under the same experimental setting,
so as to avoid the impacts resulting from implementation details and assure an effective comparison among recommendation algorithms.
The project has been released on GitHub: https://github.com/THUwangcy/ReChorus.
Key words: recommender system; deep learning; reproducibility; recommendation algorithm framework; software toolkit
在当今泛信息化时代中, 推荐系统不仅能够帮助用户发现感兴趣的内容, 也为内容提供者带来更多收,
有着非常广泛的应用场, 吸引了越来越多研究者的关注
[1]
. 近年来, 特别是随着深度学习的发展, 各种推荐
算法层出不穷, 然而每一种算法往往使用不同的平台或框架进行实现, 带来严重的可复现性问题
[2]
. 例如:
的推荐算法并不开源实现; 有的算法虽然开源, 但由于实验设定和细节的不同(优化器使用、数据集切分、负
样例选取等), 仍然很难同其他算法进行有效、公平的对比.
为了帮助缓解上述问题, 我们基于 PyTorch 设计了 ReChorus 推荐算法框架, 旨在为研究者提供一个统一
的基准来实现与对比各种算法. 现有的推荐算法之间主要的区别往往集中在信息输入和结果计算上, 一些基
本组成模块以及训练评测机制具有高度的相似性. 基于以上考虑, 我们在设计 ReChorus 框架时遵循分离、
中、易扩展的原则: 将算法间共性的部分分离出来, 将特性的部分尽可能集中到一起, 同时支持个性化的扩
展需求而避免互相耦合.
相比已有的推荐系统库, ReChorus 有如下几个特点.
(1) 综合高效. ReChorus 框架目前已实现了 13 个不同的推荐算法, 涵盖推荐领域的经典模型以及近年来
提出的基于深度学习的方法. 各种不同类别的模型都被整合到统一的框架中(如基于 ID基于序列、
引入知识图谱、引入时间信息等). ReChorus 通过 3 个核心模块, Reader, Runner, Model, 将不同模
型之间共通的数据读取、训练测评等部分整合在一起, 把每个模型独特的部分单独提取出来进行实
. 此外, 通过针对 Top-K 排序任务的特定优化, 模型的训练和测试得以高效进行;
(2) 轻量实用. ReChorus 框架力求简洁, 核心代码在
1 000 行左右, 非常易于理解与上手. 框架整体基于
PyTorch 实现, 契合如今研究社群中深度学习框架使用的整体趋势. 此外, 为了方便研究者迭代更
新模型, ReChorus 将模型独特的部分集中在一个文件中, 使得开发与测试过程更加高效. 我们还针
对研究者引入了许多实用的功能, 比如中间变量检查、重复实验记录、并行参数搜索等;
(3) 扩展性强. ReChorus 不同模块之间具有轻耦合、重组合的特点, 方便使用者在开发新模型时针对
个性化的需求进行扩展, 同时不影响其他已有的模型. 例如: 数据读入与训练评测相关的功能以帮
助类的形式分配给每个模型, 同时提供了许多接口, 使用者可以通过继承新的帮助类, 来满足模型
对数据读入和训练评测的特殊需求.
本文第 1 节介绍相关工作. 2 节描述 ReChorus 框架的整体结构以及各个模块的具体设计. 3 节介绍
基于本框架在两个公开数据集上的实验, 包括实验设置、实验结果以及对各类算法表现的分析. 最后, 4
对全文做出总结.
1 相关工作
1.1 推荐领域的可复现性
随着深度学习的发展, 越来越多的推荐算法被相继提出. 然而对于研究者来说, 确定某个任务设定下效
果领先的算法却越来越难, 许多实验设定以及细节上的实现差异都会导致结果难以对比. 特别是在 Top-K
价的场景下, 实验设定有众多的分歧点
[1]
, 这些细节往往不会在论文中详细描述, 却对实验结果有显著的影
. 近期有文献
[2]
探究了 18 个基于深度学习的推荐算法, 只有 7 个能够被成功复现, 并且效果远不如论文中
汇报的显著. 基于以上原因, 目前推荐领域亟需一套统一的模型评测标准, 以便推荐算法间进行公平有效的
对比.
of 9
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜