#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

论文题目:Contrastive Learning for Representation Degeneration Problem

in Sequential Recommendation(序列推荐:对比学习缓解表征退化问题)

论文地址:https://arxiv.org/pdf/2110.05730.pdf

论文发表网站:https://doi.org/10.1145/3488560.3498433

论文来源:WSDM ’22:第十五届 ACM 网络搜索和数据挖掘(顶会)

引言

1. 什么是序列推荐?

序列推荐(sequential recommendation)在推荐系统里是非常重要的任务, 它通过对用户(user)行为序列,比如购买商品(item)的序列(sequence)来建模,学到user 兴趣的变化,从而能够对用户下一个行为进行预测。 序列推荐的模型,随着整个CS research(计算机科学 搜索)领域的发展,也是一直在不断变化。从最开始的 Markov chain,到后来的 RNNCNN模型,以及现在流行的 transformer。每个时期的序列推荐模型,基本上也是对应着该时期用的比较多的NLP模型。

2. 对比学习

2.1 噪声对比估计(NCE)

对比学习是将正样本对拉近,将负样本对推开。具体来说,噪声对比估计 (NCE) 目标通常用于训练编码器(如下所示),其中x和x+是来自正样本分布ppos的样本对,x – 是从数据pdata中随机采样得到,τ \tau τ为温度系数。

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda
; 2.2 校准性(Alignment)和均匀性

NCE的损失是根据上式随机的进行增长或者减少。数学角度定义为在向量被归一化的假设下表示的校准性和均匀性,如下所示,其中ppos是正样本对的分布,pdata是独立样本的分布。最小化 lalign等价于使得正样本对更相近,最小化 luniform等价于使得这些样本均匀分布。

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

3. 为什么在表征学习模型训练过程中会出现”表征退化”问题?

首先,在进行梯度下降时候,目标项和非目标项都进行统一的训练,而不是具有指向性的训练,这就会导致原本表示准确的向量迭代时候产生偏差。其次,所训练的向量最后都在一个潜在的空间中表示,导致一些不相似的商品的embedding很集中。

4. 文章中的符号表示

商品集合表示为V,用户交互序列表示为s = [υ \upsilon υ1, υ \upsilon υ2, …, υ \upsilon υt],模型的目标即根据序列信息预测在时间t+1时可能交互的商品。

一、DuoRec算法实现

1.1 序列编码作为用户表征

序列推荐的主要思想是整合用户历史的交互信息去预测用户的偏好,和SASRec思想一样,DuoRec的编码模块也是一个Transformer层,为了利用Transformer的编码能力,首先需要将商品转换为embedding,然后使用多头注意力机制模块去计算用户的表征。

1.1.1 Embedding层

文中将序列s = [υ \upsilon υ1, υ \upsilon υ2, …, υ \upsilon υt]中商品的embedding表示为s = [V1, V2, …, Vt],同样为了保证顺序关系,加入了位置编码Pt,则可以将时间戳为t的商品的embedding表示为下式:

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

; 1.1.2 自注意力机制

在得到输入序列后,Transformer层运用多头注意力机制进行编码,将H0 = [h00, …, ht0],经过L层的多头注意力层Trm后,可得到输出表征,表达为下式,最后在HL = [hL0, …, hLt]选出最后一个表征hLt作为序列的表征。

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

1.2 推荐学习

接下来的数据预测任务是在整个物品集合中进行分类任务。给定一个序列表示h和物品的向量表征矩阵V,预测分数计算公式如下所示:

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

将上述指标转换为one-hot向量y,计算该阶段交叉熵 lRec(第一部分交叉熵)损失为:

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

; 1.3 对比正则化

为了缓解表示退化问题,通过利用无监督和有监督的对比样本来开发对比正则化。

1.3.1 无监督增强

DuoRec 中的 无监督对比增强旨在为单个序列提供语义上有意义的增强。本文提出了模型级增强,在序列向量的计算中,embedding层和 Transformer 编码器中都有 Dropout 模块。 使用不同的 Dropout 掩码将输入序列前向传递两次将生成两个不同的向量,它们在语义上相似但具有不同的特征。 因此,本文中的输入序列无监督增强选择了不同的 Dropout 掩码,对编码器输入的embedding(式3)进行进一步运算,以获得h0’t,然后输入到编码器,通过不同的dropout掩码得到不同的输出,公式如下,经过编码后,同样采用最后一个表征h’来代表整体的序列表征:

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

; 1.3.2 有监督正采样

DuoRec 中的 监督对比增强旨在将语义相似序列之间的语义信息合并到对比正则化中。如果只应用无监督对比学习,原本语义相似的样本将被分类为负样本。因此,最重要的是确定哪些样本在语义上相似。

语义相似性
如果两个序列代表相同的用户偏好,那么很自然地推断出这两个序列包含相同的语义。因此,对于不同的序列si = [υ \upsilon υi,1, …,υ \upsilon υi,ti ]和sj = [υ \upsilon υj,1, …,υ \upsilon υj,tj ],如果预测目标,即后一个商品υ \upsilon υi,ti和υ \upsilon υj,tj是一样的,则表明两个序列语义相似。
正采样
对于输入序列 ,数据集中存在具有相同目标商品的序列。从这些序列中随机抽取一个语义相似的序列ss。从而经过上述步骤得到其表征。

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

1.3.3 负采样

为了有效地为一对增强样本构建负样本,同一训练批次中的所有其他增强样本都被视为负样本。假设训练批次为β \beta β,其大小为|β \beta β|,增广后大小为2|β \beta β|,序列为S = {h’1, h’1,s, h2′, h’2,s, …, h’B, h’B,s},即经过正采样后都会对应一个增广的embedding。对于每一个样本对(如,h’1和h’1,s),除了这两个样本对之外,其他的都看做是这有两个样本对对应的负样本(如,S- = {h2′, h’2,s, …, h’B, h’B,s}),因此,负样本集合大小为2(|β \beta β| – 1)。但是,如果负样本集合中有序列对应的目标商品与正样本一样,则将其从负样本集合中去除。

1.3.4 正则化目标

和前面NCE的公式类似,这里有了正负样本后,同样可以构建类似的损失函数(第二个),如下所述:

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

最后总的损失函数为(λ \lambda λ为超参数):

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

之后作者又从数学角度解释了为什么对比正则化之后就可以解决表征退化问题以及说明该方法是在监督对比学习(SCL)方法基础上进行的改进。

; 结论

下图说明了DuoRec和其他主流算法的性能对比图。

#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda
#Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

Original: https://blog.csdn.net/CRW__DREAM/article/details/123405727
Author: 堇禤
Title: #Paper Reading#Contrastive Learning for Representation Degeneration Problem in Sequential Recommenda

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/699738/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球