图技术学习-来自美团技术研究

1.图技术介绍

近些年来,随着图神经网络(Graph Neural Networks)的快速发展,越来越多的人开始关注起图数据。工业界也出现了图技术的相继落地,很多应用场景都可以抽象为节点向量化表示、分类、聚类、链接预测等图任务形式。

  • 对于召回场景来说,基于多种实体间天然存在的关联交互图,构建深度匹配模型学习到的Embedding表达可以直接用来度量用户-商品的偏好、商品-商品关联。
  • 对于预估模型来说,最朴素的视角,即是在用户-商品这个二部图上进行链接预测。

相比传统欧式空间结构类型数据,图结构数据具有以下特点:

  • 结构化:图网络具备拓扑结构性,这种结构化特性往往代表了一些规律。例如节点重要性,社区结构等。
  • 关联化:图网络提供了一种复杂关系和交互的度量方法。例如关联关系、依赖关系可以通过图表征学习进行度量。
  • 全局化:图网络构建采用全域数据,相比私域化的序列数据,图结构数据更加能够体现出群体偏好信息。
  • 强泛化:利用图网络的消息传播机制,图上节点丰富信息更容易传播到冷门节点上,提高冷门节点表达能力。

从业界信息表示的发展趋势来看,信息表示是在升维的:从手工特征,到序列建模,再到图建模,背后是对更加完整信息的有效刻画的诉求。

  • 手动特征时代:基于行为日志统计挖掘用户/商家/商品画像。缺点是刻画粒度较粗、不精准、表达能力有限。
  • Neural Network(NN)序列模型时代:基于原始行为序列设计用户兴趣提取模块端到端学习用户兴趣。优点是一定程度从多峰和动态演变方面提升了用户兴趣表达的准确性。缺点是较难学习到结构化信息,对于行为数据强依赖,头部用户行为密集,中长尾用户行为稀疏。
  • Graph Neural Network(GNN)时代:万物皆图。序列可以看做是一个子图,相比于序列,图结构数据对于信息的表达,更加结构化、完整、丰富。

在日常业务优化中我们也发现,如果说要找到一种形式化的建模语言能够准确、完整的翻译出我们的业务场景,那么呈现出来的建模语言就是“图”。

2.图技术的场景化建模

2.1 基于特征图的场景特征交叉建模

特征是机器学习模型的源动力,业界常言“特征的上限决定了模型的上限”。NN时代以前,模型效果的提升有很大一部分来自于特征工程。随着模型进入NN时代,NN模型具备的拟合能力以及在数据红利的加持下,极大地减少了算法工程师们在特征工程上的精力开销,工作重点开始聚焦于模型结构。虽然理论上NN可以拟合一切函数,但在有限的数据和训练周期内,无法快速地逼近效果上限。在这种背景下,显式特征交叉重新得到大家的关注,围绕自动交叉特征,业界陆续迭代出FM/xDeepFM/DCN/CAN等模型,并取得了非常好的效果。

        在场景化建模中我们发现:交叉特征带来了信息增益,但往往也会带来“噪声”问题;比如具体到样本粒度来说,不同类型的样本所需要的有效交叉特征并不是完全一致,存在差异性。近两年业界的一些工作,如Fi-GNN、L0-SIGN、阿里FIVES等,也都在对应的业务中发现全量信息交叉引入噪声问题。

因此,从迭代思路来看,希望能够引入更多的交叉特征,同时也减少噪声信息的引入,实现在样本粒度的“个性化”交叉特征。

        特征交叉,可以抽象为“从全量特征集中,选择出K组特征两两组合,实现给模型带来高效非线性表达能力的目的”。本质上可以看做是特征-特征之间二部图的关系预测:将特征看作节点,特征之间的关联关系看作边,则可以将所有特征之间的关联关系构成一张图网络。两个节点连边的权重,可看作对应特征之间交叉关系的强弱。通过将此关系图嵌入到模型训练过程中,关系图中不同边权即反映了不同特征交叉的重要程度。

每个样本中N个特征互相之间构成一个全连通图记为M,图中的每个顶点表示特征F,顶点之间的边表示任意两个特征Fi和Fj的关联度,记为M。通过联合训练关系图和预估模型,更新参数矩阵M,使关系图的语义信息与预估模型保持相关性和一致性,主要过程如下图3所示:

主要步骤可描述如下:

  • Step1. 建立参数矩阵(随机初始化得到),对特征所对应的向量表示做点积,结果作为关联系数。
  • Step2. 对矩阵施加L0惩罚,用于限制矩阵M的参数尽量接近0,减少无用的场景交叉。
  • Step3. 参数矩阵0,1化,用于确定需要参与聚合的节点。
  • Step4. 图聚合,对于每个特征来说,与其存在交互的多个特征进行聚合操作,聚合方式使用Attention。
  • Step5. 将聚合后的特征向量表示,做为该特征新的向量表示,用在下游CTR预估的联合训练中。

通过特征交叉系数抽象为图的边权重要性评估问题,使模型具备了对场景特征之间关联强弱的预测能力,从而能够更加高效地引入交叉特征,为用户的场景化建模提供更多的信息输入。

2.2 基于子图扩展的行为图建模

用户行为信息是指用户在平台的点击/下单活动记录,是最原始最直接的对于用户兴趣的刻画,尤其是针对行为稀疏用户来说,行为POI序列中任意节点都值得重视。但对于这部分用户,仅仅依靠个人行为POI很难建模兴趣,如果能够通过图的方式扩展用户行为,能够有机会跳脱个人私域行为限制,透过全局行为图捕捉不同场景下的潜在兴趣。

基于用户Session行为构建了POI网络:在同一个Session里,用户所点击过的POI存在关联,那么可以将每个Session里的POI构建一个连通图;由于不同用户行为的POI是有重叠的,整个外卖场景下的不同POI簇之间通过这些重叠的POI链接,就可以形成一张POI网络。对于任意一个POI,我们都可以从POI行为网络中,寻找到该POI的一跳、二跳邻居,这些邻居可以作为POI信息的相关补充。这样,对于用户的行为兴趣刻画,不仅仅局限在用户已有的序列上,而是可以通过子图进一步扩展。

相比传统序列建模方法,图网络建模可以利用全局用户行为互联的高阶网络结构,借助POI序列扩展用户兴趣:

  • 对于行为稀疏用户,通过全局行为互联图,补充用户兴趣建模线索。
  • 缓解基于密集用户行为建模产生的马太效应,跳出历史行为探索潜在兴趣,提升推荐结果泛化性。

具体的,针对用户行为序列中的每一个POI,都可以通过子图进行扩展,扩展后的子图通过卷积的方式形成POI的向量表示,如下图(左)所示。通过行为序列的扩展,使用户行为得到补充,从而得以跳出用户个人兴趣局限,丰富用户和POI的信息表达。

在POI子图的基础上,我们进一步思考如何有效地聚合不同POI,达到子图信息更加完整的表达。

  • 建模不同POI之间强弱不同的关联关系,使用Attention结构动态分配确定POI在所属子图中的贡献度。
  • 考虑到POI子图是由Session构建的,用户的行为序列存在差异,相应地POI信息表达在不同用户序列中也存在差异,POI子图信息应该在不同行为上下文序列中自适应表达。
  • 为了捕捉这种差异性,在子图卷积的过程中,我们将中心节点与当前行为序列中其他节点做聚合,从而建模行为上下文场景关联性。

中心节点不仅受到序列和子图影响,也受到当前候选POI的影响。因此在联合下游训练的过程中,我们将中心节点与样本Target POI进行聚合。

离线训练时,是基于用户行为序列,对序列中每个POI作兴趣子图拓展;而子图生成时采用预采样(Message Passing)+联合训练聚合的方式;通过以上三种聚合方式,得到属于行为序列中POI对应的向量表示。由于这个过程不仅是扩展了POI,还将序列信息、候选POI信息考虑到了每个节点的表示中,我们称这种为子图感知卷积。通过子图感知卷积,使卷积的过程中,POI的向量表示与上下文信息产生关联,从而使POI的嵌入表示融合了更精确的兴趣信息。

2.3 基于元路径的场景图建模

我们对用户决策过程进行抽象,将用户User与商户POI在给定Context环境下的一次交互定义为一个事件(Event),多个用户和POI交互的结果定义为事件链(EventChain)。对于多个强相关的事件链(不同事件链通过公共节点连接),就构成了一个场景,而场景之间的User、POI主体又存在连接,这样延展开,实际上就构成了一个“场景”拓扑网络图,如下图所示:

可以看到,实际上事件链组成的“场景”是一种异构图:比如具备某些属性(消费频率、商品偏好等)的用户U,在某个上下文C下(时间、地点等),点击/购买了具备某些属性(品类、商品等)的商户P,这个决策过程实际上是个最简单的U-C-P元路径。事件链是在这个元路径的基础上继续扩展,得到的更长的元路径实例(U-C1-P2-C2-U’)。通过事件链,可以建立起场景要素的关系链接,而对场景的完整刻画,就是对场景要素表示和要素关系的抽取。

        元路径UCPCU表达的语义为:不同用户在不同时空场景下,点了同一家商户,当然不同场景需求可以定义不同的元路径。为了进一步融合元路径中丰富的语义表达,仅仅依赖单一的元路径的话,所表达的语义会受到限制。我们从用户U出发,通过该元路径可以扩展出一系列的元路径实例,这些实例刻画了不同场景下,用户和POI的跨时空关联。整个建模过程分为以下几步:

  • Step1. 用户和商户节点存在较多属性,相比节点拓扑结构包含更多语义信息。我们将属性信息看作节点,通过GraphSAGE的方式聚合到用户和商户表示中。
  • Step2. 从用户U出发,基于元路径,扩展出多条元路径的实例(事件链)。下图展示多条实例,包括:U-C1-P1, U-C2-P2-C3-U’,U-C2-P3-C4-U”-C5-P4;通过扩展能够建立起用户U和商户P4的关联。
  • Step3. 元路径实例查询向量表示后进行拼接,并与样本中的用户(Target User)进行交互。多条候选元路径的设计,可以突破单一元路径依赖信息裁剪造成的信息缺失。交互的方式采取Attention,即计算当前用户与所有候选元路径的关联,并最终作用于下游预估中。

对于线上请求,检索同场景下Emie。

通过图网络技术,我们扩展了不同场景下的用户潜在兴趣,借助注意力机制捕捉当前决策,与不同元路径对应场景的关联性,从而实现场景化建模。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值