记得给 “应用机器学习” 添加星标,收取最新干货
作者:哈尔滨工程大学,香港城市大学 张持
今天跟大家分享一篇来自于哈尔滨工程大学、香港城市大学、特拉华大学提出的多行为推荐文章,该文章从一种全新的角度,即如何降低大量辅助行为对目标行为推荐的负面影响,研究多行为推荐问题。具体地,该文提出了多行为推荐中的两个关键挑战,设计了一种全新的DPT (去噪与提示调节) 框架解决上述挑战。
论文: https://arxiv.org/abs/2302.05862 代码: https://github.com/zc-97/DPT
在多行为推荐中,用户与项目之间的交互具有多种类型 (如,点击,添加购物车,和购买)。通常,辅助行为 (即,点击和添加购物车) 的交互记录较多,而目标行为(即,购买)相对较少。因此,大量的辅助行为可能会为推荐模型引入不相关的信息,降低模型对用户目标行为推荐的精度。具体地,大量的辅助行为会引起两个关键挑战:
辅助行为中的噪声交互 :在现实推荐场景中,辅助行为中的某些用户-项目交互是带有噪声的,如意外交互。这些噪声交互不能准确反映用户的兴趣,从而对模型学得的多行为知识产生了负面影响。因此,将学得的知识向目标行为推荐迁移时,数据集中辅助行为的比例越大,噪声的负面影响就会越大,从而影响推荐精度。然而,实际场景中往往缺少标注噪声交互的监督信号,使得这一挑战难以被解决。 多行为之间的语义鸿沟 :尽管用户-项目交互在多行为下有重叠,目标行为的语义特征仍与辅助行为有所不同。例如,在电子商务场景中,大量的点击最终不会转换为购买。因此,在大量的辅助行为下学得的知识,将被过度挤压在辅助行为的语义空间中。从而导致了拟合多行为之间语义鸿沟的内在挑战:即,在这样的知识中,如何有效地提取目标行为特定的语义,并将这种语义迁移到目标行为推荐中,同时不破坏知识的信息量。
针对上述多行为推荐的挑战,作者提出了一种新颖的去噪和提示调整(DPT)框架,采用三阶段学习范式。具体地, ① 第一阶段,作者设计了一个模式增强的图编码器。该编码器以数据驱动的方式,学习复杂模式,并将这些模式作为先验知识,用于指导去噪模块识别辅助行为中的固有噪声。② 第二阶段,重新初始化模型中部分参数以进一步减弱噪声影响。③ 第三阶段,作者采用深度的连续提示调节范式来缓解多行为间的语义鸿沟,从而适应性地提取目标行为的特定信息。
为展示三阶段学习范式对去噪以及推荐的影响,作者提供了一个案例研究,如下图所示。在DPT第一阶段后,显式地移除了点击和加入购物车中的噪声交互。对于用户未来购买的项目2130,DPT每个阶段的推荐得分都比前一阶段高 (1.42 < 1.56 < 1.86) 。验证了作者的动机,即去除辅助行为中的噪声和弥合多行为之间的语义鸿沟都可以提高目标行为推荐的精度。
方法
DPT框架的组件
在介绍DPT的三阶段学习范式之前,作者先给出了DPT框架的重要组件:
① 用户/项目关系图的构建; ② 嵌入层; ③ 模式增强的图编码器; ④ 行为感知的去噪模块。具体如下图所示:
1 用户/项目关系图结构. 表示复杂的用户/项目关系模式,提供先验信息.
用户关系图 (无向图)。在某一特定行为类型下,两名用户之间有交互过相同项目的,则在用户关系图中有一条该行为特定的无向边。边的权重为杰卡德系数,两名用户共同交互的项目数量与二者交互项目数量总和的比值,表示用户关系的强度。 项目关系图 (有向图)。在某一特定行为类型下,两个项目被某一用户交互过,则在项目关系图中有一条该行为特定的有向边。边的方向为两个项目被该用户交互的特定次序 (如),表示项目之间的顺序关系。边的权重为杰卡德系数,两个项目间被交互的特定次序数量与二者被交互数量总和的比值。 用户-项目多行为交互图 (有向图)。在某一特定行为类型下,用户交互过某个项目,则在用户-项目交互图中有一条该行为特定的无向边。边的权重为1,表示用户与项目的交互关系。
2 嵌入层:将ID独热编码映射为稠密向量
分别表示用户、项目、辅助行为 (可能有多种,文中为简化符号系统,仅用a表示) 以及目标行为的嵌入。
3 模式增强的图编码器:从多种图结构中挖掘复杂模式.
该部分由三个解耦的聚合层所组成,用于独立地从构建的图中学习多视图的模式,如下图所示:
用户关系聚合层:挖掘用户关系图中复杂模式.公式(2)中 是编码用户关系的聚合函数, 是层数, 是用户在用户关系图的行为下的邻居。是可训练参数. 公式(3)中,作者采用了步长为1卷积核为的卷积操作实现公式(2)中的聚合函数,是拼接操作, 是卷积中的可训练参数.
项目关系聚合层:挖掘项目关系图中复杂模式. 在该层中,作者使用了注意力机制来自适应地聚合项目关系图中,某一项目节点的入边和出边邻居信息。其中是公式(3)中相似的卷积函数但使用了不同的参数, 是图 中归一化的边权重, 是可训练参数的集合, 包括了注意力矩阵以及卷积核 .
用户-项目交互聚合层:挖掘用户-项目多行为图中复杂模式. 在该层中,作者使用了基于LightGCN的聚合方式实现用户-项目交互图上的消息传递。
门控层:用户、项目关系与用户-项目交互,层与层之间的自适应融合. 为了从多个图中将多种模式编码到嵌入中,作者设计了一种门控机制,自适应地平衡和融合从到层的多视图。具体地,作者在行为类型下生成的用户/项目嵌入为:其中,为Sigmoid函数, 是权重, 是可训练参数. 据此,在第层生成的多行为嵌入为:通过拼接每一层的嵌入,得到最终的行为感知表征() 和多行为表征 () :其中和是有ReLU函数激活的前馈神经网络,具有不同的可训练参数.
4 行为感知的去噪模块:识别辅助行为中噪声交互,生成去噪图.
作者利用模式增强的用户/项目嵌入参数化用户-项目多行为交互图,通过比较参数化图对原始图的还原难度,判断某一交互是否为噪声。
图解码器:参数化用户-项目多行为图 该解码器将行为感知的表征作为输入,并输出一个概率图。其中是行为下的参数化图, 是学得的用户/项目集合的表征,是行为的嵌入.
还原任务:二部图链接预测 作者将该信息还原形式为二分类任务,预测用户-项目在用户-项目交互图中的边,并将损失较高的交互识别为噪声
DPT框架的三阶段学习范式
基于上述介绍的DPT组件,可以得到模式增强的表征和去噪的辅助行为。然而,编码器学得的参数可能受到原始数据中固有噪声的影响,语义鸿沟仍然存在,导致次优的知识学习。因此,作者提出了一种三阶段学习范式。
1 DPT第一阶段: 模式编码、辅助行为去噪.
如下图所示,DPT第一阶段将构建的多种关系图作为输入,并输出了增强后的表征,从而识别噪声。
具体地
i) 通过公式(1)生成基本的嵌入,并将其输入到模式增强的图编码器中; ii) 根据公式(8)生成行为感知表征和多行为表征; iii) 根据行为感知表征引导公式(9)的去噪模块对用户-项目交互图参数化,并计算公式(10)的还原损失; iv) 将转化为硬编码的二进制分布 (0与1), 表示辅助行为下的交互是否为噪声,生成去噪多行为图; v) 利用阈值策略对图进行二值化 ( if , otherwise),其中和将识别更多和更少的噪声; vi) 将多行为推荐任务整合到DPT第一阶段,从而避免早期训练过程中的错误噪声识别其中是相似度计算函数(如,内积), , , 。是当时,在每个批次中从中随机采样的项目。
2 DPT第二阶段:进一步减少噪声对图编码器的影响.
由于去噪模块只能识别可靠的噪声而非全部噪声,因此噪声将影响学得的模型参数,如嵌入层。为避免用去噪图重新训练模型所引入的大量额外计算成本,作者在第二阶段重新初始化图编码器的参数,并去除了用户/项目关系图的聚合层(经过第一阶段的优化,嵌入已经包含了关系信息),仅保留用户-项目交互聚合层。
i) 根据第一阶段的优化结果,冻结嵌入层参数; ii) 剪枝图编码器,重新初始化图编码器参数,并将输入到图编码器中输出多行为表征; iii) 预测层中基于去噪图的BPR损失如下所示:
其中, , , . 记参数集合为, 包含了个参数.
在第二阶段,作者仅调整了一少部分的参数,远远小于重新调整嵌入层的参数量即.
3 DPT第三阶段:提示调节,弥合辅助行为与目标行为的语义鸿沟.
在上述阶段之后,生成了去噪的辅助行为和有信息量的知识 (用户/项目表征)。然而,弥合多行为之间的语义鸿沟仍然具有挑战性,这体现在:如何迁移目标行为的特定语义,同时不损害学得的多行为表征。为此,作者采用了一种深度连续提示调节方法来缓解辅助和目标行为之间的语义鸿沟,如下图所示:
i) 根据第二阶段的优化结果,冻结除了目标行为嵌入(提示)之外的所有参数;
ii) 将提示(prompt)加入到图编码器的每一层中,根据生成多行为表征;
iii) 输入预测层中,仅根据目标行为优化BPR目标函数:
在第三阶段,作者仅调整了提示的参数,远远小于第二阶段的调整参数量,即.
模型复杂度分析
作者分析了每个阶段DPT可训练参数的数量。
第一阶段. 更新嵌入层和模式增强图编码器的所有参数:; 第二阶段. 只更新少部分参数: ; 第三阶段. 只更新提示的参数:
总结:DPT的第二、第三阶段都采用了轻量级的方法,与嵌入层的用户/项目参数相比,只调整、添加了少量参数 (和通常具有较大尺寸)。
实验
作者在实验部分主要回答三个研究问题:
① DPT是否优于其他多行为推荐方法; ② DPT的不同阶段以及不同行为对目标行为推荐性能的影响; ③ DPT的三阶段学习范式在去噪和目标行为推荐的可解释能力;
数据集
评估指标:HR@10, NDCG@10
对比实验
对比方法:
① 单行为推荐方法:BPR,PinSage,NGCF,LightGCN,SGL ② 多行为推荐方法:NMTR, MATN,MBGCN,EHCF,KHGT,CML ③ 轻量级的去噪、微调方法:ADT,NoisyTune
消融实验
DPT的每一阶段都对最终性能有所贡献, 且每一阶段的性能都优于前一阶段。
作者比较了不同的提示调节方法对性能的影响,如下表所示:其中:
DPT-shallow为仅在图编码器的第一层使用提示; DPT-projection为根据用户/项目嵌入向量投影生成提示; DPT-add为文中所用方法;
DPT-add始终优于其他变体,验证了该文的提示方法的有效性。
此外,作者分别移除了每种类型的行为,以研究不同行为的重要程度。在IJCAI数据集上的HR(NDCG)@10分别为:移除点击:0.351(0.206),移除加入收藏夹:0.423(0.237),移除加入购物车:0.481(0.285)。上述结果表明,每种类型的行为都对模型性能有所贡献。其中点击是最重要的信号,虽然点击中存在噪声,但大量的点击行为可以提供最有帮助的信息。
案例研究
该部分用以说明DPT的三阶段学习范式如何影响目标行为推荐。
上图展示了一名ID为58的用户,未来购买的项目ID为2130.该用户在Tmall数据集中点击了52个项目,将4个项目添加到收藏将4个项目添加到购物车,并购买了6个项目。在DPT第一阶段后,明确地移除了点击和加入购物车行为下的噪声项目{2102,2129,2120,2100}。且每个阶段在购买行为下为用户推荐项目2130时得分均高于前一阶段。
点击左下角 “阅读原文”, 获取原始论文。