# 阅读报告:Contrastive Learning for Sequential Recommendation 与 Self-Supervised Learning for Sequential Recommendation with Mutual Information Maximization
# 1. 概述
本文综述了两种用于顺序推荐的自监督学习方法:对比学习用于顺序推荐(CL4SRec)和自监督学习用于顺序推荐(S3-Rec)。这两种方法旨在解决数据稀疏性问题,提高推荐系统的性能。CL4SRec 通过对比学习框架生成自监督信号,而 S3-Rec 则通过用户行为序列和项目属性的融合生成自监督信号。
# 2. CL4SRec
# 2.1 数据稀疏性问题
在许多实际应用中,数据集中存在大量缺失数据或零值数据,导致数据集非常稀疏,难以有效地进行数据分析和建模。
# 2.2 对比学习框架
CL4SRec 模型采用对比学习框架,通过用户交互序列的数据增强和用户表征编码器,生成自监督信号,从而提高用户表示的质量。
# 2.3 数据增强方法
项目裁剪(Item Crop):从用户的历史行为序列中随机选择一个连续的子序列,提供用户历史行为的局部视图。公式如下:
[
s^{crop}u = a(s_u) = [v_c, v_{c+1}, \ldots, v_{c+L_c-1}]
]
其中,(L_c = \left\lfloor \eta \cdot |s_u| \right\rfloor)。项目掩码(Item Mask):随机遮掩用户历史行为序列中的部分项目,用特殊标记 [mask] 替换。公式如下:
[
s^{mask}u = a(s_u) = [\hat{v}1, \hat{v}2, \ldots, \hat{v}]
]
其中:
[
\hat{v}t = \begin{cases}
v_t & \text{if } t \notin T \
\text{[mask]} & \text{if } t \in T
\end{cases}
]
其中,(T_{su} = (t_1, t_2, \ldots, t_{L_m})) 且 (L_m = \left\lfloor \gamma \cdot |s_u| \right\rfloor)。项目重排序(Item Reorder):随机打乱用户历史行为序列中的项目顺序,使模型能够捕捉到用户行为序列中项目之间的长距离依赖关系。公式如下:
[
s^{reorder}u = a(s_u) = [v_1, v_2, \ldots, \hat{v}i, \ldots, \hat{v}, \ldots, v_{|s_u|}]
]
其中,(\hat {v}_i) 是随机打乱后的子序列,(L_r = \left\lfloor \beta \cdot |s_u| \right\rfloor)。
# 2.4 用户表示模型
CL4SRec 模型通过堆叠多个 Transformer 编码器层来对用户的历史行为序列进行编码,最终输出用户在时间戳上的表示,用于预测用户下一步最可能交互的物品。
# 2.5 多任务训练
采用联合优化的方法,通过主要损失和对比损失的线性加权和进行优化,从而提高模型的推荐性能。总损失函数为:
[
L_total} = L_{main} + \lambda L_{cl} \] 其中,主要损失函数 \(L_{main}\) 为每个用户在每个时间步的负对数似然: \[ L_{main}(s_{u,t}) = - \log \frac {\exp (s_{u,t})}\exp(s_{u,t}) + \sum_v\in V^-} \exp(s_u,t})}
]
对比损失函数 (L_cl}\) 为: \[ L_{cl}(s_u, s^a_j}_u) = - \log \frac{\exp(\text{sim}(s_u, s^a_j}_u))}{\exp(\text{sim}(s_u, s^a_j}_u)) + \sum_{s\exp(\textsim}(s_u, s^-))}
]
# 3. S3-Rec
# 3.1 自监督学习框架
S3-Rec 模型利用自监督学习方法,通过用户行为序列和项目属性的融合,生成自监督信号,从而提高推荐系统的性能。
# 3.2 数据增强方法
S3-Rec 的主要数据增强方法与 CL4SRec 类似,包括项目裁剪、项目掩码和项目重排序。
# 4. 实验
实验结果表明,CL4SRec 和 S3-Rec 在处理数据稀疏性问题上表现出色,显著提高了推荐系统的性能。特别是在 Top-K 命中率(HR@K)、归一化折扣累计增益(NDCG@K)和平均倒数排名(MRR)等指标上,两种方法均表现出较大的改进。
# 4.1 数据集
使用了来自 Amazon 和 Yelp 的四个公共数据集:Beauty、Sports、Yelp 和 MovieLens-1M。每个数据集经过预处理以确保每个用户和项目至少有 5 条交互记录(5-core)。
# 4.2 评估指标
采用命中率(HR)和归一化折扣累计增益(NDCG)来评估每种方法的性能。
# 4.3 实验结果
实验结果表明,CL4SRec 和 S3-Rec 在所有数据集上的所有评估指标上均显著优于现有的基线方法,验证了该方法在顺序推荐任务中的有效性。特别是 CL4SRec,在数据稀疏的数据集上表现尤为显著。
# 5. 结论
CL4SRec 和 S3-Rec 通过引入对比学习和自监督学习框架,显著提升了顺序推荐任务中的用户表示质量和推荐性能。未来可以进一步探索更多类型的数据增强方法,并将这些模型应用于其他类型的推荐系统中,以验证其通用性和适用性。
# 6. 未来工作
未来可以进一步探索更多类型的数据增强方法,并将这些模型应用于其他类型的推荐系统中,以验证其通用性和适用性。