论文翻译-C2-Rec: An Effective Consistency Constraint for SequentialRecommendation

ABSTRACT
顺序推荐方法在现实世界的推荐系统中扮演着重要角色。这些系统能够通过利用历史记录来捕捉用户偏好,从而进行推荐。对比学习(Contrastive Learning,CL)是一种前沿技术,可以帮助我们获得有信息量的用户表示,但是这些基于CL的模型需要精细的负采样策略、繁琐的数据增强方法和沉重的超参数调整工作。在本文中,我们介绍了另一种方法来生成更好的用户表示,并向用户推荐更有吸引力的物品。特别地,我们提出了一种有效的一致性约束顺序推荐方法(C2-Rec),其中只使用了两个额外的训练目标,没有进行任何结构修改和数据增强策略。我们在三个基准数据集和一个真实的工业数据集上进行了大量实验,证明了我们提出的方法明显优于SOTA模型。此外,我们的方法所需的训练时间比那些基于CL的模型少得多。在实际的推荐系统上进行的在线AB测试也实现了10.141%的点击率提高和10.541%的人均平均点击次数提高。代码可在
1 INTRODUCTION
推荐系统现在广泛应用于许多在线平台,例如亚马逊[30]、谷歌[2、5、20、23]、阿里巴巴[53]和腾讯[11]。由于用户和物品之间的动态交互,捕捉用户兴趣的演变从用户的历史记录中变得至关重要。为了准确地表示用户的兴趣并做出适当的推荐,许多工作已经致力于研究序列推荐方法[16、25、45、50]。
通常,序列推荐任务旨在从用户的历史行为中描述用户的表示,并相应地预测期望的物品。鉴于深度学习在序列依赖建模和表示学习方面的巨大成功,已经引入和提出了许多基于深度神经网络的方法,包括基于RNN的框架[16、32、44]、不同的CNN块和结构[45、46、58],图神经网络(GNNs)[38、50、51],以及依赖于强大的多头自注意力[47]的模型变体[25、28、42]。尽管表现良好,但这些方法可能会受到数据稀疏性问题的困扰[25、41、65],特别是对于建立在多头自注意机制上的模型,其中仅使用单个物品预测损失来优化所有模型参数以捕捉输入交互序列中的所有可能相关性。
为了应对上述挑战,引入了各种自监督学习策略[55、64]。其中,最近引入的对比学习(CL)目标[53]取得了非常有希望的结果。通过与有效的数据增强策略相结合,并与传统的序列预测目标合作,基于CL的方法可以学习更好的序列级用户表示,并增强序列推荐的性能。然而,CL方法的有效性取决于相关的数据增强方法、预处理任务、高效的负采样和超参数选择(例如NCE和InfoNCE损失中的温度)[21]。为了减轻上述缺点,许多努力已经被做出来简化对比学习。Gao等人[9]提出了一个非常简单但有效的对比学习方案,利用辍学噪声作为数据增强来构建高质量的正样本,用于序列级表示学习。尽管这样的方案对于无监督表示学习是有效的,但将其适应于序列推荐任务仍然会遇到一个困境,即模型训练中更高比例的CL目标将导致更好的表示,能够轻松区分正负样本,但可能导致更差的物品预测性能,反之亦然。换句话说,在序列推荐任务中,正负样本的区分能力与任务目标之间存在明显的差距。因此,获得更好的用户表示,主要为了物品预测任务,关键在于设计更多的训练策略,以解决序列推荐模型固有的问题。
受最近对多头注意力模型的观察启发,即在监督任务的输出空间中施加非常简单的正则化策略可以取得显著的性能提升[29](在许多具有挑战性的任务上达到了SOTA),我们建议在序列推荐任务中彻底探索一致性训练的效果。我们首先将简单的双向KL散度正则化引入到输出空间中,以约束具有不同dropout的两次前向传递之间的不一致性。与以前的机器翻译、摘要和自然语言理解任务不同,我们认为仅在输出空间中引入的一致性正则化对于序列推荐的数据稀疏设置来说是不够的。因此,我们设计了一个新颖而简单的正则化目标,应用于表示空间。与以前利用余弦[9]和L2[36、66]距离来规范表示空间的研究不同,我们建议规范每个用户表示在其他表示上的分布概率。因此,我们可以扩展和利用有效的双向KL损失来规范表示不一致性。对三个公共基准和一个新收集的大规模语料库的实验表明,我们提出的序列推荐简单一致性训练(CT4Rec)远远优于基于对比学习的最先进方法。广泛的实验进一步证明,我们提出的一致性训练可以轻松地扩展到数据方面(除了模型辍学),并且可以利用顺序推荐任务中普遍存在的一致性信号,例如同一用户点击的项目应该共享一些属性。在线A/B测试也证实了我们方法的有效性。
简而言之,我们主要有以下贡献:
 我们提出了一种简单(仅使用两个双向KL损失)但非常有效的一致性训练方法,用于序列推荐系 统。据我们所知,这是第一篇从不同角度和统一的训练目标来彻底研究一致性训练对于序列推荐任务的影响的工作。
 我们提出的一致性训练方法可以很容易地扩展到其他不一致场景,例如数据增强。它还可以利用更多的任务特定的一致性。
 对四个离线数据集的广泛实验表明,我们提出的基于一致性训练的序列推荐模型(CT4Rec)比基于对比学习的最先进模型具有更好的性能和更快的收敛时间。在线A/B测试也显示了与强大的集成模型相比显著的改进。
2 RELATED WORK
早期的序列推荐方法通常基于马尔可夫链(MC),包括采用一阶MC[40]和高阶MC[12、13]。对于当前的深度学习方法,它们通常可以分为四类,即基于RNN的方法[16、17、22、27、31、32、39、44]、基于CNN的方法[45、46、52、58]、基于注意力的方法[25、28、42、56、57、62]和基于GNN的方法[26、38、48、50、51、63]。具体而言,GRU4Rec[16]将RNN应用于SR,并且通过添加数据增强GRU4Rec+[44]、分层RNN[39]、注意力模块[3、27、34]、排名损失[15]、基于用户的门控单元[7]和上下文信息[1]等方法,提出了许多基于GRU4Rec的变体。然而,对于数据稀疏的情况,基于RNN的方法通常表现不如基于CNN和注意力的方法。 Caser[45]提出了一个卷积序列嵌入推荐模型,Tuan和Phuong[46]使用三维卷积神经网络实现了输入数据的字符级编码。
NextItNet[58]使用扩张卷积来建模长程项目依赖性,并且优于GRU4Rec。同时,注意力机制[47]被用来建模用户行为序列,已经取得了杰出的性能[8、24、25、28、33、42]。此外,许多研究[38、50、51]将注意力机制和图神经网络相结合来解决SR任务。记忆网络[4、19]、解缠表示学习[35]、数据增强Guo等人[10]、Yao等人[54]的转移学习Zhang等人[61]和基于会话的Hu等人[18]模型也被用于改进SR的性能。
最近,对比学习和注意力机制的结合[53、64]在SR中被广泛使用,并取得了巨大的成功。CauseRec[60]通过对比反事实和观测来执行对比学习。StackRec[49]利用堆叠和微调来开发一个深度但易于训练的SR模型。ICAI-SR[59]专注于SR中项目和分类属性之间的复杂关系。SINE[43]可以为下一个项目预测任务建模多个兴趣嵌入。与以往的研究不同,我们仅在表示和输出空间中引入了两个一致性训练目标,而没有进行任何结构修改、额外数据和从任务中提取的启发式模式。尽管非常简单,我们的方法大幅优于最近的SOTA模型,并且对于模型训练更加高效。
在自然语言处理[9]和机器学习[29、36、66]领域,相关研究非常少。具体而言,高等人[9]将dropout作为数据增强的替代方法引入到对比学习中进行序列表示学习,而我们则专注于数据稀疏SR任务中由dropout引入的不一致性。与将对比学习与传统项目预测目标相结合的范例相比,我们提出的方法也非常简单。马等人[36]、Zolna等人[66]主要关注训练和测试之间的差距,并利用L2正则化表示空间,但在数据稀疏的情况下效果较差,如第5节中所示的较小或没有性能提升。不同于在输出空间引入正则化目标来约束dropout带来的子模型随机性[29],我们从表示空间和输出空间两个方面专注于数据稀疏SR任务的一致性训练。我们还在表示空间提出了一种简单而有效的正则化策略,以补偿和对齐输出空间中的一致性损失。
3 THE CT4REC MODEL

图1:CT4Rec的模型结构。它以用户点击序列为输入,在推荐的匹配阶段输出用于项目检索的用户表示。输入序列通过嵌入层转换为向量表示,然后通过N个具有不同隐藏层dropout掩码的transformer进行编码。此外,引入了分布式正则化损失和正则化dropout损失,以限制由不同dropout掩码生成的这些表示。

我们的模型的总体结构如图1所示。在详细说明我们提出的CT4Rec之前,我们首先介绍一些必要的符号来描述序列项目预测任务。令U = (𝑢1,𝑢2,...,𝑢|U|)表示用户集合,V = (𝑣1,𝑣2,...,𝑣|V|)表示项目集合。用户𝑢∈U的序列表示为𝑠𝑢= (𝑣(𝑢)1,𝑣(𝑢)2,...,𝑣(𝑢)𝑡,...,𝑣(𝑢)|𝑠𝑢|),其中𝑣𝑡(𝑢)∈V是用户𝑢在时间步骤𝑡处与之交互的项目,|𝑠𝑢|是序列𝑠𝑢的长度。给定历史序列𝑠𝑢,顺序推荐的任务是预测所有备选项目与用户𝑢在时间步骤|𝑠𝑢| + 1处的交互概率,其公式为:

3.1 Backbone Model  

由于我们提出的一致性训练方法不涉及结构修改和额外数据利用,因此我们将其应用于广泛使用的SASRec模型[25]。按照SASRec中的原始设置,Transformer编码器包含三个部分,即嵌入层、堆叠的多头自注意力块和预测层。然后,我们可以获得用户表示𝒔𝒖 = 𝑓(𝑠𝑢),其中𝑓(·)表示Transformer编码器。
为了学习顺序推荐中用户和项目之间的关系,应用相似性函数(例如内积)来测量用户表示和项目表示之间的距离。因此,对于用户𝑢在时间步骤𝑡的用户表示𝒔𝒖,𝒕,我们可以得到相似性分布P(𝒔𝒖,𝒕) = P(𝑣(𝑢)𝑡+1|𝒔𝒖,𝒕) ,用于预测用户𝑢将在时间步骤𝑡 + 1处与之交互的项目。然后,基本损失函数与正样本𝒗+𝒕+1和随机采样的负样本𝒗−𝒕+1∈V−表示为:
其中𝜔表示模型的所有可训练参数。
3.2 Consistency Training
受到最近有关dropout的研究[29]的启发,我们从减少模型不一致性和差距在训练与测试之间的角度来增强用户表示。具体而言,我们使用不同的dropout前向两次,并学习每个用户的这两个表示之间的一致性,即每个用户交互序列su通过前向网络两次,获得两个表示𝒔𝒅1𝒖,𝒕和𝒔𝒅2𝒖,𝒕。
正则化Dropout损失(RD)。考虑到用户u的两个表示𝒔𝒅1𝒖,𝒕和𝒔𝒅2𝒖,𝒕,如式(2)所述,我们可以得到两个相似性分布P(𝒔𝒅1𝒖,𝒕;𝜔)和P(𝒔𝒅2𝒖,𝒕;𝜔)。类似于R-Dropout[29],我们引入一个双向KL散度损失来规范化上述两个分布,写成:

分布式正则化损失(DR)。为了更好地规范化表示空间,我们提出了一种分布式正则化方法,其中每个用户由其与其他用户的相关性表示,而不是直接利用用户表示进行一致性规范化。在本文中,我们在每个小批量中比较用户,例如,𝑛个用户(𝑢1,𝑢2,...,𝑢𝑛)和由dropout生成的每个用户的两个表示,表示为(𝒔𝒅1𝒖1,𝒔𝒅1𝒖2,...,𝒔𝒅1𝒖𝒏)和(𝒔𝒅2𝒖1,𝒔𝒅2𝒖2,...,𝒔𝒅2𝒖𝒏)。如图2所示,对于用户𝑢1,我们计算𝒔𝒅𝒋𝒖1和所有其他用户表示𝒔𝒅𝒋𝒖𝒊之间的相似性,定义为𝑠𝑖𝑚(𝒔𝒅𝒋𝒖1,𝒔𝒅𝒋𝒖𝒊),并获得相似性分布

 

 图2:DR损失的示意图。用户的点击序列首先通过表示模型两次,以获得用户𝒔𝒅1𝒖和𝒔𝒅2𝒖的两个不同表示集。然后,我们计算某个用户与同一集合中其他用户之间的相似性。我们进一步使用双向KL来约束不同集合之间的相似性分布。

然后,应用双向KL散度损失来规范化两个分布P𝑢 (𝒔𝒅1𝒖1;𝜔)和P𝑢 (𝒔𝒅2𝒖1;𝜔),定义为:

最终目标。我们将上述两个目标与骨干模型中的任务特定损失结合起来进行模型训练。任务特定损失和最终训练目标如下所示:

3.3 Training Algorithm

CT4Rec的整个训练过程如算法1所示。如第3-5行所示,我们通过两次前向模型获得每个用户序列𝑠𝑢𝑖,𝑡的两个用户表示𝒔𝒅1𝒖𝒊,𝒕和𝒔𝒅2𝒖𝒊,𝒕。第6-7行根据损失函数8计算L𝑓𝑖𝑛𝑎𝑙,并更新模型参数。训练过程将持续进行,直到收敛。

4 EXPERIMENTS

4.1 Datasets

我们在三个公共基准数据集上进行了广泛的实验,这些数据集在最近的文献[53]中被广泛使用,以及从真实推荐场景中收集的一个新的大规模数据集,即PC-WeChat Top Stories。这些数据集在领域、平台和数据规模上非常不同,它们的详细统计数据如表1所示。

 表1:四个公共基准数据集和来自实际应用的离线语料库的数据集统计信息,其中avg.表示每个用户的平均行为数量。

Amazon数据集:这是一系列包含产品评论的数据集,这些评论是从最大的电子商务平台之一Amazon.com中爬取的。正如SASREC[25, 37]中介绍的那样,这些数据集按照顶级产品类别进行了分离。我们遵循最近一项研究[53],使用Beauty和Sports类别进行比较。

Yelp数据集:这是一个广泛认可的用于商业推荐的数据集,是从Yelp平台1收集的。遵循Zhou等人[65]的方法,我们利用2019年1月1日之后的数据,并将商业类别视为属性。

WeChat数据集:这个数据集是从PC版微信平台上构建的Top Stories推荐数据集(用WeChat表示以区别于其他平台的数据集),其中包含了从2021年6月7日到13日的交互记录。每个交互提供了一个用户对一个项目的正反馈(即点击)。具体来说,我们收集了来自0.74百万用户对0.21百万个项目的950万个交互,并将前几天的数据作为训练集,其余数据作为测试集。 

4.2 Baselines
为了验证我们提出的方法的有效性,我们引入了四个代表性的基准方法和三个最近提出的方法。
GRU4Rec [16]。它利用GRU模块对用户行为序列进行建模,用于会话(session)推荐。我们将每个用户的点击序列视为一个会话。
SASRec [25]。它应用了多头自注意力机制来解决顺序推荐任务,通常被视为最先进的基准方法之一。在本文中,我们将SASRec作为我们的CT4Rec的主干。
TiSASRec [28]。基于SASRec,它进一步引入了时间间隔感知的自注意力机制来对用户的交互序列进行编码,考虑到任意两个物品之间的位置和时间间隔。
BERT4Rec [42]。它使用深度双向自注意力机制来对顺序推荐中的用户交互历史进行建模,并像BERT [6]一样训练模型。
CL4SRec [53]。它通过使用数据增强方法生成同一用户交互序列的不同视图,并在顺序推荐任务的原始目标上添加对比学习目标,来进一步提升SASRec的性能。
CLRec。周等人[64]提出了一种基于队列的对比学习方法,称为CLRec,用于消除推荐系统中深度候选生成的偏差,并进一步提出Multi-CLRec以实现多意图感知的偏差降低。在本文中,我们仅比较CLRec以实现公平性。
StackRec [49]。它首先对预训练的层/块进行堆叠操作,将知识从浅模型转移到深模型,然后利用迭代堆叠来获得更深但更易于训练的推荐模型。
4.3 Evaluations
我们使用多个离线指标(包括不同细粒度的指标),并进行在线A/B测试来评估所有方法的性能。
离线指标。参考了许多先前的研究[14, 25, 53, 65],我们采用留一法策略来评估模型的性能。具体而言,对于每个用户,我们选择其最后交互的物品作为测试集。与Kang和McAuley [25]、Zhou等人[65]类似,我们对每个正样本物品从整个数据集中随机抽取500个物品,并根据相似性分数对它们进行排序。模型的性能以top-k归一化折扣累积增益(NDCG@k)和top-k命中率(HR@k)来评估,这两个指标都是在top-k推荐系统中常用的。具体而言,我们对所有数据集报告k = {5, 10, 20}的HR@k和NDCG@k。
在线A/B测试。我们进一步进行了一项在线A/B测试,类似于Hao等人[11],以评估我们的CT4Rec在真实世界系统中的表现。具体而言,我们已经将CT4Rec部署到PC Wechat Top Stories推荐中。为了校准CT4Rec对在线系统的影响,CT4Rec被实现为当前匹配模块中的额外通道,而系统的其余部分不变,其中现有的匹配模块指的是组合多种方法的集成模型,例如基于规则、基于强化学习、基于序列、DSSM、自蒸馏等。在在线A/B测试中,我们利用两个指标,即点击率(CTR)和人均平均点击次数(ACN),来评估模型的性能。在线测试持续5天,涉及近200万用户。
4.4 Settings
所有模型都是基于TensorFlow实现的。对于具有官方代码的基线模型,我们使用作者提供的实现。对于没有来自原始论文的开放式可访问代码的模型,我们更倾向于使用开源社区中经过充分测试的版本。具体而言,我们使用     ​​​​​​https://github.com/Songweiping/GRU4Rec_TensorFlow中的代码作为GRU4Rec [16]的实现。我们基于相关论文的模型描述和实验设置实现了CL4SRec和CLRec,因为没有官方代码或流行的开源实现。为了公平比较,嵌入维度大小设置为50,并且所有模型都通过Adam进行优化。
回想一下,我们提出的CT4Rec方法不修改模型架构,只增加了骨干模型的模型规模,并且只涉及两种有效的一致性正则化策略。因此,我们按照骨干方法(即SASRec[25])实现了我们的CT4Rec。我们使用两个自注意力层,并将头数设置为2。所有数据集的最大序列长度为50。我们使用学习率为0.001和批大小为128来优化参数。关闭神经元的Dropout率设置为0.5。为了验证每个组件及其组合的效果,我们固定了模型的结构和其他超参数,仅调整𝛼和𝛽的值,其中𝛼和𝛽从{0.1,0.3,0.5,1.0,2.0,3.0}中选择。有关重现我们实验的其他详细信息可以在我们的匿名代码中找到。
4.5 Main Results
我们报告了所有模型在四个离线数据集上的整体性能,以比较它们在top-K推荐中的有效性,并进一步展示了在线A/B测试的结果,以了解我们的CT4Rec在实际推荐系统中的适用性。
整体离线性能。如表3所示,我们提出的CT4Rec在三个基准数据集和一个大型工业语料库上表现优于所有其他基线方法,包括多个代表性模型和最先进的顺序推荐解决方案。与利用数据增强或/和对比学习获得更好的用户表示并减轻单个项目预测任务与数据稀疏情况下的大量参数之间的不兼容性的其他强大方法相比[25],我们的CT4Rec更简单、更有效,而不需要任何增强数据或精细的训练策略,只引入了两个额外的目标。CT4Rec相对于基于对比学习的SOTA模型的性能提升通过HR@𝑘和NDCG@𝑘得分对CLRec和CL4SRec获得了显著的改进得到了证实。我们还观察到,最近基线中的训练目标比SASRec中的原始二元交叉熵表现得更好,这由SASRec 相对于SASRec大幅提高离线得分的结果得到了证明。请注意,我们的CT4Rec是通过将两个训练目标引入SASRec来实现的。我们将CT4Rec与SASRec 进行比较以校准我们的一致性训练方法的效果。CT4Rec在四个数据集上和所有HR@𝑘和NDCG@𝑘得分上相对于SASRec普遍提高(相对改进范围在5.60%至16.50%之间),验证了我们提出的简单方法的优越性。

表3:基线和我们提出的CT4Rec在四个离线数据集上的模型性能,其中“”表示使用最近基线中的训练目标修改SASRec中的原始二元交叉熵损失,例如CLRec、CL4SRec、StackRec等。我们的CT4Rec是在SASRec上实现的。 Improv和Improv分别指CT4Rec相对于SASRec和SASRec的相对改进。相对于基线的性能提升在𝑝 <0.01的统计学意义上是显著的,在附录中我们呈现了使用不同随机种子进行的额外两次运行的实验结果。 

在线A/B测试的性能提升。CT4Rec在实际推荐服务中的性能提升报告在表2中,可以看出,仅将CT4Rec作为匹配模块中的另一个附加通道实现,而不改变系统的其他部分,即可在原始集成模型上获得非常印象深刻的性能提升。我们的方法分别将CTR和ACN指标提高了10.141%和10.541%。这表明我们提出的简单方法不仅对离线基准和评估指标有效,而且在现实世界的在线系统中也具有很好的泛化性能。

5 ANALYSIS AND DISCUSSION 

我们已经展示了我们提出的简单CT4Rec在离线基准和在线A/B测试中的印象深刻的性能。在本节中,我们进行了广泛的实验,以从不同角度理解和分析CT4Rec。为方便起见,这些研究是在Beauty数据集上进行的。具体来说,我们主要关注以下几个方面:1)每个引入目标的效果(消融研究),2)几个重要超参数的影响(超参数分析),3)探索更多用于顺序推荐的一致性正则化(更多一致性训练),4)将CT4Rec扩展到数据增强(扩展到数据增强),5)由CT4Rec引起的训练过程和成本的变化(训练和成本分析)

5.1 Ablation Study
我们进行了一项消融研究,以探索第3节中两个目标,即正则化dropout(RD)和分布式正则化(DR)的效果,结果如图3所示。
RD目标。如左侧子图(a)所示,引入的RD目标实现了与骨干SASRec 模型相比显着的性能提升。与DR目标及其变体相比,RD损失对性能提高的贡献最大,这表明在模型输出空间中启动一致性正则化对SASRec最有益,这与其他任务中的观察结果类似[29]。可能的原因是,RD一致性正则化直接影响模型输出概率分布的相同空间。
DR目标。我们可以看到,无监督的DR损失也可以产生显著的性能增益,这表明在用户表示空间中进行无监督的一致性正则化对于数据稀疏的顺序推荐任务也是必要的。我们还采用了先前研究中的两种典型的无监督策略[9,36,66]来规范用户表示,包括余弦相似度和L2距离。如图3中右侧的两个子图所示,这两种方法没有对基础方法带来有意义的改进,进一步证明我们设计的DR目标更适用于表示空间中的一致性正则化。

 图3:消融研究和𝛼和𝛽的分析结果。 (a) CT4Rec与L𝑏𝑎𝑠𝑖𝑐和L𝑅𝐷。 (b) CT4Rec与L𝑏𝑎𝑠𝑖𝑐和L𝐷𝑅。 (c)和(d)分别用余弦和L2损失替换L𝐷𝑅,其中橙色线条是SASRec*的性能。

在这部分中,我们主要考虑了几个关键的超参数,包括方程8中的𝛼和𝛽以及dropout比率。

𝛼的影响。图3还给出了不同𝛼值的结果。考虑到(𝛼,𝛽)网格有许多可行的组合,我们暂时移除DR目标,仅检查RD对𝛼的影响。可以观察到,较小的𝛼值可以带来有意义的性能提升。随着𝛼的增加,性能提高进一步增加,当𝛼 = 2.0时获得最佳结果。这些结果进一步证实,即使只占最终训练目标的一小部分,直接在输出空间上执行的一致性正则化也非常有效。随着𝛼的进一步增加,模型将更加关注模型输出的一致性,这将稀释原始的物品预测目标,导致性能变差(例如,𝛼 = 2.0 v.s.,𝛼 = 2.0)。

𝛽的影响。与𝛼的分析类似,我们仅研究每个单独的无监督正则化损失(即DR、余弦和L2)对𝛽的影响。与𝛼不同,当𝛽<0.3时,DR损失对整体性能没有影响。这可能是因为用户表示的一致性正则化在通过到输出空间时被压倒和适应。随着𝛽的增加,DR损失逐渐发挥更重要的作用,并持续提高模型性能,直到𝛽>2.0。同时,大的𝛽值将强制模型关注用户表示的一致性,而不是执行物品预测任务。对于余弦目标,不同的𝛽值对评估结果影响有限。至于L2损失,大的𝛽值会导致性能下降。

关于Dropout比率的分析。除了上述分析外,我们还研究了Dropout比率如何影响我们的CT4Rec的有效性,因为不同的Dropout比率会导致不同程度的不一致性。如图4所示,Dropout比率对骨干模型的性能有显著影响,当Dropout比率<0.7时,我们提出的一致性训练是可行和有效的。然而,当Dropout比率>0.8时,我们提出的CT4Rec会导致负面影响。我们推测这背后的原因可能是数据稀疏问题和不可调和的不一致性。 

图4:不同dropout率对CT4Rec和SASRec*在Beauty数据集上性能的影响。
5.3 More Consistency Training
上面介绍的两个一致性正则化目标旨在解决数据稀疏顺序推荐任务中表示空间和输出空间中的不一致性问题。在这一部分中,我们探索利用基于任务特定先验的更有帮助的一致性信号来训练,而不是解决模型的不一致性问题。具体而言,我们研究了一种非常简单和直观的一致性约束的影响,即同一用户点击的商品可能具有某些相似之处。
为了利用这样的固有信号,我们对每个用户的两个正向商品嵌入应用一致性正则化,这也可以在一定程度上规范商品表示空间。具体而言,我们从每个用户的历史序列中随机采样两个正向商品,并计算它们的相似度(即余弦相似度),作为CT4Rec的一个额外的一致性目标,称为CT4Rec+。如表5所示,CT4Rec+在CT4Rec的基础上持续改善了模型性能,这表明在普遍存在的任务相关信息上进行一致性训练可以进一步提高顺序推荐性能。
表4:数据增强设置下不同一致性正则化策略的性能比较。
表5:更多一致性训练的实验结果。

 

5.4 Extension to Data Augmentation
以上研究证明了我们的CT4Rec的每个组件的有效性以及它利用更多一致性正则化信号的能力。接下来,我们研究它在其他不一致性场景中的泛化能力。更具体地说,我们利用我们的一致性训练方法来规范除了上述模型内部不一致性之外的数据带来的不一致性,即我们用数据增强方法替换Dropout来创建两个不同的用户表示和相应的任务输出,以进行一致性正则化。为了与基于对比学习的最新顺序推荐方法保持一致,我们利用CL4SRec [25]中的两种易于实现的数据增强策略,即Reorder和Mask。这样做,我们可以直接比较不同训练目标(除了顺序推荐的物品预测目标之外)对增强数据的影响,包括无监督方法(即CL、余弦、L2、DR)、输出空间中的监督正则化(RD)以及DR和RD的组合(CT4Rec)。表4呈现了数据增强设置的实验结果。我们可以观察到:1)我们引入的DR目标与其他单一方法相比最有效,即表示空间上的一致性正则化是数据增强场景下最理想的选择,这与Dropout设置的观察结果相反。我们推测,标签不变的数据增强方法可能会导致排列和扰动的表示变体,这需要更多的一致性正则化,而标签不变的策略不会破坏输出空间中的不一致性。2)表示空间和输出空间的一致性正则化的组合(CT4Rec)仍然表现最佳,相对于其他训练目标具有一致和显著的性能优势。
5.5 Training and Cost Analysis

 图5:在Beauty数据集上验证集上的NDCG@10和HR@10曲线以及训练轮数和时间。

由于我们的CT4Rec不修改骨干模型的模型结构或引入额外的增强数据,因此我们主要分析训练过程中的变化。我们绘制了SASRec*、CL4SRec和我们的CT4Rec模型在验证集上HR@10和NDCG@10分数随训练轮数和时间(秒)的曲线,如图5所示。在早期的训练阶段,骨干SASRec*模型以相同的训练轮数(约15轮)和模型性能迅速收敛,并且与CT4Rec相当。但是我们的CT4Rec可以持续提高已经训练好的SASRec*模型的性能。这表明我们的一致性训练目标不会对骨干SASRec*模型增加更多的训练轮数。但是对于将对比学习目标与SASRec*相结合的CL4SRec,它需要更多的训练轮数才能收敛,并且只有适度的性能提升。至于收敛时间(秒),由于我们的一致性训练目标需要在每个训练步骤中进行额外的前向过程(Dropout),因此我们的模型确实比骨干模型慢,但实现了更优越的性能。与CL4SRec相比,我们的CT4Rec更加高效和有效,具有更好的最终优化结果和更短的收敛时间,即使我们没有计算CL4SRec的数据增强和负采样的时间成本。

通过分析,我们可以得出以下结论:1)即使不计算数据增强和负采样的时间成本,CT4Rec仍然比基于对比学习的方法更加高效和有效;2) CT4Rec确实为骨干模型引入了额外的训练时间,但这可以通过提前停止来缓解,因为我们的CT4Rec在早期阶段就可以快速超越骨干模型,并具有更好的最终收敛性能。

6 CONCLUSION
在本文中,我们提出了一种简单而非常有效的一致性训练方法,即CT4Rec,它只涉及两个双向KL损失。我们首先通过最小化输出空间的最佳正则化,引入两个不同输出的双向KL损失。然后,我们通过最小化两个用户表示的分布概率,在表示空间中设计了一个新的一致性训练项。大量的实验和分析证明了其有效性、效率、泛化能力和兼容性
表6:在四个离线数据集上,基线模型和我们提出的CT4Rec模型的性能均使用随机采样100个负样本进行设置,其中“*”表示将SASRec中的原始二元交叉熵损失修改为最近基线的训练目标,例如CLRec、CL4SRec、StackRec等。我们的CT4Rec是基于SASRec*实现的。Improv和Improv*分别指CT4Rec相对于SASRec和SASRec*的相对改进。

 表7:在四个离线数据集上,基线模型和我们提出的CT4Rec模型的第二次运行,其中“*”表示将SASRec中的原始二元交叉熵损失修改为最近基线的训练目标,例如CLRec、CL4SRec、StackRec等。我们的CT4Rec是基于SASRec*实现的。Improv和Improv*分别指CT4Rec相对于SASRec和SASRec*的相对改进。除了随机种子,其他设置与表2相同。

表8:在四个离线数据集上,基线模型和我们提出的CT4Rec模型的第三次运行,其中“*”表示将SASRec中的原始二元交叉熵损失修改为最近基线的训练目标,例如CLRec、CL4SRec、StackRec等。我们的CT4Rec是基于SASRec*实现的。Improv和Improv*分别指CT4Rec相对于SASRec和SASRec*的相对改进。除了随机种子,其他设置与表2相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值