作者亲自解读系列
转载请注明出处
TLDR: 本文提出了一种用于多行为推荐的有向无环图卷积网络(DA-GCN),首次将单调的预设行为链拓展为个性化的有向无环行为图,用于行为依赖建模。DA-GCN遵循有向无环结构的信息流动,沿着行为链,依据可学习注意力机制收集并聚合来自所有潜在有向入边的协同过滤信号。该模型生动展现了复杂的个性化跨行为依赖,所学习到的行为偏好分布同时揭示了每个用户的交互习惯和每个物品的固有属性。DA-GCN不仅性能优越,而且具有方法简单、复杂度低、可解释性强的特点。
论文:https://dl.acm.org/doi/10.1145/3696417
代码:https://github.com/xizhu1022/DA-GCN
大多数传统推荐算法往往只利用目标行为(如购买)的历史交互数据,没有包含对辅助行为(如浏览、加购)等上下文信息的建模。然而,这些行为在电商平台中表现为一条预设的单调行为链(behavior chain),如“浏览->加购->购买”。由此,低层次行为给高层次行为提供更丰富的协同过滤信号,缓解数据稀疏和冷启动问题。更进一步,丰富的差异化行为路径背后还隐藏着个性化行为交互模式,有助于实现更全面的偏好建模,给出更准确的推荐。
已有研究从两个角度来建模多行为推荐的行为依赖:并行(parallel)方式和级联(cascade)方式。
并行模型。 此类模型自然地将多路交互转换为各种精心设计的异质图,然后并行地提炼和聚合不同行为的语义和上下文信息,最后借助GNN、元网络、自注意力、对比学习等机制并行捕捉行为依赖。这些模型结构繁琐、效率低下、性能有限,我们将其归因于缺乏对真实多行为场景的直观建模。 级联模型。 此类模型则真实反映实际场景中行为链的偏序关系(partial order relationship),通过翻译模型、残差层等串行链接各个行为的神经网络模块。此类方法已被证明简单有效、符合直觉,为我们针对级联效应进行进一步研究提供了依据。
然而,已有研究仍然有两方面的缺陷:
不充分的行为依赖建模。 已有研究粗略地假设一个预设的单调行为链,不能涵盖现实应用中复杂多样的行为路径,不符合客观事实。如图所示,并非所有路径都会指向购买,达到购买前某些中间行为也可以跳过。一些工作尝试用meta-graph来表达行为路径的关联性,但这些方法也严重依赖领域知识来手工设计有限数量的元路径。更糟糕的是,这些元路径以特定行为作为中介,只能描述预先定义且相互独立的受限语义关联。事实上,多样化的行为路径相互重叠,形成了有向无环图(directed acyclic graphs)。相较于传统级联方法,有向无环图的每一条有向入边都可以对应具有专门语义的行为转换,是观察当前终止行为(terminated behavior)的独特视角,这启发我们以更自然、更全面的方式揭示不同用户动机背后的行为依赖关系。
缺乏对称且可解释的个性化学习。 已有工作通过全局权重或复杂模块聚合多行为语义,导致不准确或难以解释的行为建模。下图展现了购买之前最近行为的分布,反映了不同用户的交互模式。比如,深思熟虑型的女生习惯把候选物品放到购物车中再充分考虑;而果断决策型的男生更倾向于直接购买。同理地,在物品侧,相比于日常必需品(如牙膏),用户在购买奢侈品(如钻石)之前往往会犹豫不决,从而呈现更丰富的低层次行为互动。这事实上反映出了物品的本身属性,如价格、必要性和紧急性等。然而,很多模型单一地从用户角度考虑行为异质性,导致物品建模结果次优。因此,我们需要以更灵活、更准确的方式对用户和物品同时进行多行为语义聚合建模。
为了解决这些挑战,我们提出了一种用于多行为推荐的**有向无环的图卷积网络(Directed Acyclic Graph Convolutional Network, DA-GCN)**,首次将单调的预设行为链拓展为个性化的有向无环行为图,更加准确全面地捕捉行为依赖。
我们首先依据行为链中偏序依赖的事实构建出一个有向无环图(Directed Acyclic Graph, DAG),其中每个节点对应一种行为,每条有向边表示一种潜在的行为转换。对于每种行为转换,我们用基于GCN的有向边编码器来获取其独特的上下文语义信息。然后,我们提出了一个注意力消息聚合模块,基于可学习的分布收集并聚合来自所有潜在前置行为的协同过滤信号,依次为后续行为生成更全面的表征。通过这种方式,DA-GCN遵循DAG的信息流动,生动展现了复杂的个性化跨行为依赖,并通过可学习分布同时揭示了每个用户的交互习惯和每个物品的固有属性。最后,我们设计了个性化、启发式的多任务学习用于模型优化。
方法
下图展现了DA-GCN模型的整体结构,以“浏览->加购->购买”为例,展现了模型整体的信息流动和联合优化。
基于后验概率的有向无环图初始化
基于预设行为链,并受到马尔可夫过程的启发,我们整合每个用户或物品涉及的所有行为路径,并定义每个用户(物品)交互过的物品(用户)集合。由此,我们直觉地构建个性化有向无环行为图,其中节点表示行为,并对应物品(用户)集合,而有向边则表示行为转换。
进一步,我们根据当前行为由所有潜在前置行为转换的后验概率分布,对每个用户(物品)对应的有向无环行为图权重进行初始化,其中用户和物品的从行为到的有向边权重分别是:
基于有向无环行为图的消息传播机制
有向无环结构上的消息传播分为有向边编码器和可学习分布的注意力聚合两部分。首先,对于每条有向边对应的行为转换,我们设计了一个基于GCN的有向边编码器,可以捕捉任意行为之间的协同过滤信号。对于行为到,在第层表征更新的矩阵形式是:
沿着行为链,每条有向入边都为当前行为的建模提供了独特视角。因此,我们利用注意力机制聚合当前行为所有潜在有向入边对应的协同过滤信号,从而融合多角度的语义信息,得到当前行为的全面表征。我们依次更新低层次的辅助行为到高层次的目标行为的用户和物品表征,其中行为的最终表示是:
其中正是可学习的个性化行为偏好矩阵,它综合地反映了每个用户的行为模式和(如深思熟虑型、果断决策型)物品的自身属性(如奢侈品、日常必需品)。
基于定制化多任务范式的模型优化
我们提出了一个定制化、个性化、启发式的多任务损失函数,它通过Jaccard系数为用户计算每一个辅助行为和目标行为的关联分数,将归一化的关联分数作为辅助行为对该目标行为的潜在个性化贡献,从而更灵活地协调辅助任务和目标任务之间的关系。其中,用户利用行为数据的个性化权重是:
DA-GCN的多行为共同优化损失函数是:
其中是来自行为的损失,是平衡目标行为和辅助行为的超参数。
复杂度分析
在计算复杂度方面,DA-GCN的计算量包括:(1)有向边编码器中的轻量级图卷积网络的计算复杂度是,其中是传播层数,是在行为下的邻接矩阵中的非零元素的个数,是行为的数量。(2)行为链上相邻行为的表征更新开销是,其中和分别是用户数和物品数。(3)多任务学习的计算开销是。整体来说,(1)占据了模型训练的大多数开销,(2)(3)相较而言可以忽略。
虽然CR-GCN、MB-CGCN等传统级联模型的复杂度只有。但是由于现实场景中行为链长度一般是有限的(),因此在实践中DA-GCN几乎不会带来额外的计算开销,我们在实验中也有证明。
在空间占用方面,除了用户表征和物品表征,我们只额外引入了有向无环结构的可学习转换参数,即。这也说明了DA-GCN的结构简单,在节省模型参数量上具有优越性。
实验
我们选取了一系列单行为模型和多行为模型(包括并行方式和级联方式),在Tmall和Taobao数据集上进行对比。下图可见,DA-GCN在整体推荐性能上展现出显著的优越性。
简单的模型结构是DA-GCN的重要优势,它带来了低的计算复杂度以及高的训练效率。因此,我们选取了具有代表性的并行模型和级联模型,并记录它们的运行时间。下表可见,DA-GCN与CRGCN、MB-CGCN等先进的级联模型训练时间相当,证明了有向无环结构在实践中几乎不会带来额外开销。
(消融实验、参数敏感性实验等请查看原文)
总结
本文提出了一种多行为推荐算法DA-GCN,将预设的单调行为链更灵活地拓展为个性化有向无环行为图,实现了更准确、更灵活的个性化依赖建模。DA-GCN遵循有向无环结构的信息流动,将来自不同入边视为观察当前行为的不同视角,根据可学习的跨行为分布聚合来自不同前置行为的协同过滤信号,依次生成更全面的行为表征。DA-GCN不仅结构简单、性能优越,而且展现出了低复杂度和强可解释性,为多行为推荐系统的研究提供了新的思路。
欢迎干货投稿 \ 论文宣传 \ 合作交流
推荐阅读
由于公众号试行乱序推送,您可能不再准时收到机器学习与推荐算法的推送。为了第一时间收到本号的干货内容, 请将本号设为星标,以及常点文末右下角的“在看”。
由于公众号试行乱序推送,您可能不再准时收到机器学习与推荐算法的推送。为了第一时间收到本号的干货内容, 请将本号设为星标,以及常点文末右下角的“在看”。