一文梳理序列化推荐算法模型进展

嘿,记得给“机器学习与推荐算法”添加星标


| 作者:朱勇椿
| 单位:中国科学院大学
| 研究方向:跨域推荐、多任务学习

在真实场景的推荐系统中,通常会使用所有数据来训练推荐模型,学到的user embedding可以表示用户的兴趣偏好。但是这样的用户表示可能会遗漏用户的序列行为信息,而序列推荐则旨在显式地建模用户的序列行为,提升推荐系统的效果。本期为大家分享一些序列推荐算法。

文本将序列推荐分为以下几个方面:

  • 标准序列推荐

  • 长短期序列推荐

  • 多兴趣表示的序列推荐

  • 多行为序列推荐

  • 其他序列推荐

一、标准序列推荐

标准序列推荐指通过单行为序列挖掘用户表示的推荐算法。标准序列推荐算法也非常直接,一些常见的序列建模的方法,比如Pooling, RNN, CNN, Memory Network, Attention, Transformer等等。

1.1 Pooling

将用户交互过的item的embedding,取个均值,作为序列特征加入推荐模型,比如google的推荐模型[1]。这种方法简单有效,也是业界最常见的使用序列特征的手段。

一文梳理序列化推荐算法模型进展_第1张图片

1.2 RNN-based

RNN是一种进行序列建模的非常使用的方法,广泛用于各种序列建模,比如文本、语音等等。GRU4Rec[2]将RNN引入了session-based推荐系统,将一个session内的交互作为序列历史,进行序列建模。

一文梳理序列化推荐算法模型进展_第2张图片

1.3 CNN-based

TextCNN将CNN引入了序列建模,Caser[3]将CNN引入了序列推荐。Caser中指出现在的Markov chain models只能建模point-level sequential patterns,不能建模union-level patterns,而CNN可以很好的解决这个问题。

一文梳理序列化推荐算法模型进展_第3张图片一文梳理序列化推荐算法模型进展_第4张图片

1.4 Attention-based

上述方法没有考虑用户序列行为中哪些交互是比较重要的,注意力机制(attention)是一个很好的解决方法。SASRec[4]提出了一种基于自注意力的序列推荐方法。

一文梳理序列化推荐算法模型进展_第5张图片

阿里提出了一种深度注意力网络DIN用到推荐广告[5],在业界有着广泛的应用。

一文梳理序列化推荐算法模型进展_第6张图片

1.5 Memory-based

上述的方法只对序列交互进行了建模,而没有存储下来,当序列很长时可能会遗忘一些过去的交互,RUM[6]引入了用户记忆模块,来存储序列交互的信息。

一文梳理序列化推荐算法模型进展_第7张图片

1.6 Transformer-based

Transformer在NLP任务上取得了显著的提升,基于Transformer提出了Bert等大型预训练模型。Bert4Rec[7]将这类结构思路引入了推荐系统。

一文梳理序列化推荐算法模型进展_第8张图片

二、长短期序列推荐

用户可能拥有大量交互历史,长期交互和短期交互对用户当前兴趣可能有着不同的影响,因此有必要区分用户的长短期行为。SHAN将用户行为分为长期的和短期的,使用层次注意力网络进行建模。

一文梳理序列化推荐算法模型进展_第9张图片

三、多兴趣表示的序列推荐

上述的方法通常是将用户行为编码为一个表示,但是用户的兴趣偏好通常是多个方面的,因此有方法将用户的序列行为编码为多个兴趣表示向量[9]。

一文梳理序列化推荐算法模型进展_第10张图片

四、多行为序列推荐

用户通常有多种不同的行为序列,比如点击、分享、购买等等。因此对多行为序列建模来抓获用户兴趣偏好也是非常有必要的[10]。

一文梳理序列化推荐算法模型进展_第11张图片

五、其他序列推荐

现在还有一些其他的序列推荐方法,比如用对比学习来做序列推荐任务[11]。

一文梳理序列化推荐算法模型进展_第12张图片

另外还有一些和序列推荐很接近的任务,比如next basket[12]。

六、总结

显式地建模用户的历史交互行为对提升推荐的效果有很大的作用,因此需要使用一种高效的模块进行序列建模,此外还应该考虑长短期序列、多行为序列、多兴趣表示等多个角度的序列建模。当然在某些场景序列特征可能作用不大,可以先用pooling简单试试序列特征的效果。

七、参考文献

[1] Deep Neural Networks for YouTube Recommendations. Recsys2016.

[2] Session-based Recommendations with Recurrent Neural Networks. ICLR2016.

[3] Personalized Top-N Sequential Recommendation via Convolutional Sequence Embedding. WSDM2018.

[4] Self-Attentive Sequential Recommendation. ICDM2018.

[5] Deep Interest Network for Click-Through Rate Prediction. KDD2018.

[6] Sequential Recommendation with User Memory Networks. WSDM2018.

[7] BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer. CIKM2019.

[8] Sequential Recommender System based on Hierarchical Attention Networks. IJCAI2018.

[9] Controllable Multi-Interest Framework for Recommendation. KDD2020.

[10] Incorporating User Micro-behaviors and Item Knowledge into Multi-task Learning for Session-based Recommendation. SIGIR2021.

[11] Disentangled Self-Supervision in Sequential Recommenders. KDD2020.

[12] Factorizing Personalized Markov Chains for Next-Basket Recommendation. WWW2010.

更多论文,欢迎访问https://github.com/hongleizhang/RSPapers

推荐阅读

基于RNN的序列化推荐系统总结

序列推荐模型梳理与总结

KDD2021 | 基于图神经网络的序列推荐

基于深度强化学习的推荐算法论文集锦

喜欢的话点个在看吧????

你可能感兴趣的:(算法,数据挖掘,人工智能,机器学习,推荐系统)