论文解读《Intent Contrastive Learning for Sequential Recommendation》
一、摘要
用户与物品之间的互动通常由多种因素驱动,在这种情况下难以直接获取用户的潜在需求;然而这种需求往往不易察觉因而使得基于这些潜在需求的个性化推荐变得具有挑战性;为此我们提出了一种新的方法intent contrast learning(ICL)该方法通过聚类分析将潜在需求转化为可识别的形式并将其融入序列推荐模型中;其核心思想是从未标注的数据中推导出用户的兴趣分布模式并以此为基础来优化推荐系统的准确性;与此同时这种方法还考虑了传统的人工干预因素从而提升了整体的表现;此外本文还探讨了如何从数据中提取有效的特征信息以及如何利用这些特征信息来进一步提高系统的性能;最后我们通过对多个指标进行全面评估验证了该方法的有效性和优越性;
通过对用户的兴趣进行聚类分析并形成簇结构每个簇的核心点代表一种典型的行为模式或偏好趋势;在此基础上我们设计了一个新的损失函数框架融合这两方面的信息特征并实现目标优化问题;并将传统的序列预测损失与当前的技术结合起来建立一个全面的多任务优化框架;
二、方案
2.1、定义

固定长度T,序列长了就裁剪,短了就补全。
2.2、序列建模(Next Item Prediction)

对于一个序列,在每次取其前t个元素所构成的子序列作为用于预测下一个商品的关键依据时,则可将负样本s_neg设为通过随机采样获得的一种替代样本;基于此设定,则可建立相应的模型框架如上所示:

等效于最小化自适应二元交叉熵损失,如下所示:

2.3、对比自监督学习(Contrastive SSL)

基于互信息最大化(MIM)原则,在同一序列的不同视角之间建立相关性模型。基于序列S_u及其预定义函数集合g,在其预设框架下构建两个正样本视角(positive views),其中g是从G中随机采样得到的转换器(其具体实现方式包括对序列施加遮蔽、截断以及重新排列等操作)。通常认为来自同一序列的不同视角被视为正类关联,而来自不同序列的视角则被视为负类关联。(如公式4所示)

新构建的序列通过编码器f(·)生成相应的序列兴趣表征集合H_{u₁}, H_{u₂};随后将它们合并后形成反映整体序列特征的兴趣向量h_{u₁}, h_{u₂}。本研究中所采用的融合方法是简单拼接。基于infoNCE框架设计损失函数,在计算时使用内积sim()作为相似性度量指标;同时引入负样本视角h_neg来优化模型性能。


结构如下图

2.3、意图对比学习(ICL)
2.3.1、潜在意图建模

假设用户的意图数量为K,则其优化目标即为式(7)。传统的序列推荐算法未考虑用户的意图,在这种情况下直接基于前t次交互行为的时间序列嵌入模型来进行预测;而基于 intents 的模型(如ICL)则会考虑到用户的意图,并计算每个具体intent与当前t次交互行为的时间序列嵌入之间的关系。

上述公式求解过程较为繁琐,在应用EM算法原理的基础上,则通过构建该公式的下界,并在此基础上通过最大化该下界从而实现对原式的最大化。

所有关系求期望后,在根据常用的流程往下计算损失。

意图c满足Q©分布,且

Q(ci) >= 0,可以得到下列等式

根据jensen不等式,可得下式,


为了解决ICL损失函数计算上的复杂性问题,在只关注最终阶段的下界时,则可以省略掉上式中间的部分求和项。

2.3.2、意图表征学习


意图特征向量c_i,通过平均池化,求簇中表征的均值来得到。

作者提到,后续工作将探索使用类似attention方法;
2.3.3、意图对比学习

假定意图的先验遵循均匀分布,并且在给定时意图c的情况下,条件分布与L2归一化的高斯分布在方向上具有一致性,则可表示为以下公式:

该公式可重新表述为最小化问题,在此过程中sim()函数表示内积。通过这种方式,该方法旨在优化序列与意图之间的互信息。

观察可知, 公式\text{(14)}与\text{(6)}具有相似性. 其中, \text{(6)}旨在最大化两个独立序列间的互信息; 而\text{(14)}则专注于单个序列与其对应意图间的互信息.


其中 F 是一组与 minibatch 中的 𝑢 具有相同意图的用户。
2.3.4、ICL网络结构
结构如下图(b):

2.4、损失函数

采用基础的序列损失函数、ICL损失函数以及序列级别上的SSL损失函数的形式构建多任务损失函数。
三、实验

