前言
文章发表在2020年CIKM会议上,与以往分享的端到端的模型不同,文章基于互信息最大化(mutual information maximization)原则,提出了一个自监督的序列推荐模型(预训练),来增强序列推荐中数据表示(item embedding),最终提供一个更高质量的推荐效果。
本文约2.4k字,预计阅读10分钟。
概要
对于当前的序列推荐模型,作者提出存在的两个缺点:
模型依赖于物品预测损失来学习模型,当上下文数据被纳入后,所涉及的参数也通过唯一的优化目标学习。研究发现【FPMC,AutoInt论文】,这种优化方法容易受到数据稀疏等问题的困扰;【有点难以理解】
模型过分强调了最终的性能,而上下文数据和序列数据之间的关联在数据表示中没有得到很好的捕捉;
针对这两个问题,作者想采用「自监督学习模型」来提高序列推荐的性能。
❝自监督模型可以利用数据内在相关性来设计辅助训练目标(重新定义优化的目标),并通过自监督信号的预训练方法来增强数据表示。
❞
因此,作者提出一个自监督学习模型---「S3」(self-supervised sequential recommendation model),以自注意力机制为模型架构的基础,互信息最大化(MIM)为优化目标,四种关系(item-attribute,sequence-item, sequence-attribute sequence subsequence)为具体内容。另外,通过预训练得到的item embedding,输入到微调模型(这里作者选择了SASRec的结构)训练。
【注】总结来说,采用自监督的预训练方式最大的好处就是更方便的融合上下文特征,采用其他的训练目标(例如互信息最大化)能从其他角度捕捉物品与上下文特征的相关性。
模型结构
文章的主要创新集中于自监督预训练模型,作者通过最大化四种关联关系的互信息来增强item embedding的表示,具体模型结构如下:
问题定义
定义用户集合 和物品集合 ,对于单个用户 ,其历史物品序列为 , 为交互物品的数量。为了方便,使用 代表子序列 。并且,对于单个物品 ,包含一些额外的属性