今天跟大家分享一篇来自于昆士兰大学总结的基于自监督学习的推荐系统综述,该文章总结了150篇自监督推荐系统相关的文献。具体的,该文根据统一的范式概括了四大类方法,并提炼了三种训练范式。另外,还总结了三类数据的经典数据增强技术。最后该文提出了一个全新的自监督推荐系统开源库SELFREC,该库实现了超10种经典的自监督学习推荐算法。作者希望通过总结的文章为该领域的学者与实践人员提供统一的视角与整体的学习框架。
论文:https://arxiv.org/abs/2203.15876
代码:https://github.com/Coder-Yu/SELFRec
(太长不看版)本文的最大贡献是提出了一种统一的分类方式将当前基于自监督学习的推荐系统进行分类,并提出了一个易于扩展与使用的开源工具包。具体的贡献如下:
- 首先对基于自监督学习方法的推荐系统(SSR)进行全面的综述,力求尽可能多的调研相关文献,该文是该领域方向的首篇综述;
- 该文提出了针对于SSR的专属定义,并且提出了一个综合的分类视角,即将当前的SSR方法归纳为了对比式方法、生成式方法、预测式方法与混合方法。针对每一类方法,该文详细的阐述了其概念、公式、相关方法以及优缺点分析。
- 本文提出了一个开源工具包SELFREC,其包括了多个基准数据集以及评价指标,另外还实现了超10种SSR算法。
- 最后,本文介绍了该方向的局限性,并总结了剩余的挑战与未来研究方向。
另外,关于自监督学习推荐系统总结文章可阅读RSPapers | 基于自监督学习推荐系统论文合集。关于推荐系统综述可参考入门推荐系统,这25篇综述文章足够了。
对于SSR的定义
自监督学习的问世为推荐系统领域提供了一种缓解数据稀疏问题的新视角,通过总结在推荐系统领域运用自监督学习技术的方式,该文总结了关于SSR的基本特征:
- 通过半自动化的方式获取更多的监督信号。
- 通过一个辅助任务利用增强的数据来微调推荐系统。
- 辅助任务(Pretext task)协助推荐系统任务(Primary task)来完成更高性能的推荐模型。
其中,1确定了SSR的基本范围,2确定了SSR区别于推荐系统其他领域的问题设置,3阐述了与推荐主任务与辅助任务的关系。
对于SSR的分类
本文根据辅助任务(pretext task)的特征,将当前SSR任务分为了对比方法、生成方法、预测方法与混合方法。
其中,对比式方法主要思想是通过数据增强任务来拉进两个相近实例的表示,拉远两个不相近实例的距离。
其中,生成式方法主要思想是利用数据当中的一部分来预测另一部分,其是受自然语言处理领域带掩码的语言模型的启发。
其中,预测式方法与生成式方法类似,其都拥有预测任务。主要思想是利用半监督学习技术来预测富有信息量的新样本或者伪标签。
其中,混合式方法主要思想是集成上述提及的任务一种或者多种辅助任务,并利用不同的权重将其整合起来。
对于SSR的训练方式
通过推荐主任务与辅助任务的整合方式,其可以分为三种类型的训练范式,即联合训练模式,预训练与微调模式与综合训练模式。
其中,联合训练模式主要框架是通过一个共享的编码器来同时优化主任务与辅助任务。
其中,预训练训练模式主要框架是首先在辅助任务上预训练,然后在推荐主任务上进行微调操作。
其中,综合训练模式相对较少,主要框架是通过将主任务与辅助任务进行对齐进而利用整体的损失函数进行优化。
本文根据辅助任务与训练模式分别进行统计,发现生成式SSR与对比式SSR占比较高;联合训练模式的SSR方法与预训练模式的SSR方法是其主要使用的训练框架。
对于数据增强的总结
本文根据数据结构,即序列数据、图数据与特征数据将数据增强方法进行总结,将基于序列数据的数据增强方法分为了Item Mask,Item Cropping,Item Reordering,Item Substitution与Item Insertion。将基于图数据的数据增强方法分为了Edge/Node Dropout,Graph sion与Subgraph ling。将基于特征数据的增强方法分为了Feature Dropout,Feature Shuffing,Feature Clustering与Feature Mixing。
对比式SSR方法总结
灵活的数据增强技术与多种多样的辅助任务可以催生出许多SSR方法。本文根据自监督信号的来源分为了Structure-level contrast,Feature-level contrast与Model-level contrast方法,下表根据场景、数据增强方法、对比类型等条件列举了多种SSR方法。
生成式SSR方法总结
生成式SSR方法的思想是通过对原始输入进行重构,将数据中的内在相关性进行编码,从而使推荐任务受益。在本节中,我们主要关注基于MLM的生成SSR方法,这是当前的趋势之一。根据重构目标,我们将生成式SSR方法分为两类:结构生成和特征生成。下表根据场景、数据增强方法、训练模式等条件列举了多种SSR方法。
预测式SSR方法总结
与破坏原始数据以获得自监督的生成式SSR方法不同,预测式SSR方法是从完整的原始数据中获得的自我生成的监督信号进行处理。根据预测任务预测的内容,我们将预测方法分为两个分支:样本预测和伪标签预测。下表根据场景、数据增强方法、训练模式等条件列举了多种SSR方法。
混合式SSR方法总结
混合式方法将多个辅助任务组合在一起,充分利用不同类型的监督信号。我们根据他们的辅助任务功能将调研的混合方法分为两组,包括合作式的和独立式的。下表根据场景、数据增强方法、训练模式等条件列举了多种SSR方法。
关于开源算法库SELFREC
SSR方法正处于一个繁荣时期,越来越多的SSR模型被开发出来,并声称自己是最先进的。尽管数量不断增加,但我们注意到在收集的论文中,不同SSR模型之间的实际比较往往是不公平的。另外,这些方法的一些代码实现效率很低,可读性也很差。尽管已经有一些开源存储库实现了少量的SSR模型,并提供了统一的框架和标准的评估协议,其设计覆盖了各种推荐模型,其体系结构对实现SSR模型并不有效。为了促进SSR模型的开发和标准化,我们发布了一个开源库- SELFRec,它继承了RecBole和QRec的优点。主要包括快速运行、易于扩展、高模块化。
最后,本文提出了SSR方向一些潜在的挑战与未来研究方向。比如,对于数据增强选择的理论证明、基于自监督推荐系统的可解释性、基于预训练推荐模型的攻击与防御、移动边缘设备上的自监督推荐模型等以及通用预训练方法等。