推荐系统与GNN擦出的火花竟如此绚丽多彩

Posted 深度学习自然语言处理

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐系统与GNN擦出的火花竟如此绚丽多彩相关的知识,希望对你有一定的参考价值。



  炼丹笔记干货  
作者:十方

推荐系统会存储大量的用户与items交互数据,这些数据可以用二部图呈现。二部图对消除推荐系统中数据稀疏性和冷启动有着巨大的帮助。这篇主要总结了3个典型的GNN方法在推荐系统领域处理用户与items的二部图。





user-item二部图






我们可以通过每个用户交互过的item列表,构建一个巨大的二部图,如下图所示:

传统的神经网络方法(如协同过滤,双塔),是无法处理上述二部图的,图神经网络就是要充分挖掘节点信息和节点与节点的交互信息,从而带来巨大的商业价值。

在推荐领域,图神经网络主要解决了以下几个问题:
  • 节点的敏感度,节点顺序很小的改变极大的影响模型的输出。

  • 节点间闭塞的信息交互,传统的深度学习模型不能够充分挖掘高阶节点之间的交互信息。

  • 解释能力弱,传统的深度模型面向直观的交互式图结构,不能用于基于图形的解释和推理。


当使用GNN处理二部图,输入节点的顺序并不会影响输出。另外,GNN使用边的去辅助传播、集成节点和邻居的状态,更新当前节点的状态,结构化的信息会被模型捕捉,并表达在每个节点上,从而解决推荐系统稀疏性的问题。





embedding 层






embedding层主要研究如何获得交互图和一系列节点的特征,并使用此信息生成节点embedding,从而生成子图和整个图的embedding。这一层的作用是学习一个低维的向量表示,作为图神经网络模型的输入。在在早期的推荐系统中,提取用户和item的特征应用最广泛的是矩阵分解(MF),如概率矩阵分解(PMF),偏差矩阵因子分解(BiasedMF)、神经网络矩阵因子分解(NNMF)等。然而,这些方法都有很大的缺点。每次分解都需要很长的时间复杂性与较高的空间复杂性,并不能完全探究用户和item之间的隐含关,导致推荐效果不理想。从DeepWalk算法首次应用,各种深度学习embeding方法层出不穷。

推荐系统与GNN擦出的火花竟如此绚丽多彩


最简单的方法是使用浅层嵌入方法生成节点的唯一低维向量表示,即在初始步骤中,每个用户和item被定义为唯一ID并直接映射成embedding这种设计的优点是模型可互换,不变形。互换性的不变性在于该模型不依赖于邻接矩阵中行列的任意顺序,弥补了深度模型对节点输入顺序高度敏感的缺陷。






传播更新层






传播更新层是GNN推荐系统模型的核心组成部分,包括两个阶段:邻居节点信息传递,聚合和更新(下图)。嵌入层解决了图数据很难高效地输入推荐算法。下一步是解决深层模型消息传输路径阻塞问题及解决方案长距离节点的信息传播问题,然后是邻居信息可以聚合在一起,为解决推荐系统中数据的稀疏性问题提供了一种可行的思路的。在每个消息传递迭代过程中,每个节点u对应的embeding可以通过图的所有邻居节点N(u)聚合进行更新,因此传播更新层可以抽象地定义为:

推荐系统与GNN擦出的火花竟如此绚丽多彩

推荐系统与GNN擦出的火花竟如此绚丽多彩

推荐系统与GNN擦出的火花竟如此绚丽多彩






卷积聚合器






图卷积聚合器使用中心节点及其相邻节点的embedding的聚合来表示中心节点,并进行迭代传播,从邻居节点聚合嵌入的特征信息,并且只有一个卷积运算变换并聚合一阶图的邻域的嵌入表示,通过叠加多层图卷积网络,达到传播远处多级的信息的目的。最后更新当前节点的嵌入表示。如GraphSAGE提出了一种小批量聚合算法,在一次更新没使用所有的邻居节点,对邻居节点中的特征进行采样,并将更新后的最终状态用于预测和反向传播。PinSage框架下使用局部图卷积运算从邻居节点聚合信息。图卷积聚合可以抽象地定义为:

    推荐系统与GNN擦出的火花竟如此绚丽多彩

推荐系统与GNN擦出的火花竟如此绚丽多彩






门聚合器






经典的长、短期记忆循环神经网络系统已经被证明对于学习序列数据的动态特性非常有效,其中GRU和LSTM中的输入输出门机制可以保持长期的内部状态。门控图神经网络(GGNN)使用一个门递归单元在固定步数的传播过程去更新聚合节点的隐藏状态门聚合可以抽象地定义为:

推荐系统与GNN擦出的火花竟如此绚丽多彩






注意力聚合器






注意机制几乎已经成为处理序列数据任务的必用方法,已成功应用于机器翻译和机器阅读。注意力机制可以区分不同节点的重要性。例如,购物场景下,最近购买的产品相比那些几个月前购买的产品有参考价值在传播过程中加入注意机制可以给邻居节点赋权,通过不同的attention score对邻居节点的embedding进行聚合注意力聚合器可以抽象地定义为:

推荐系统与GNN擦出的火花竟如此绚丽多彩






预估层






在多层传播之后,从每个层获得的embeding被拼接在一起作为用户或item的最终特征。除了拼接,其他的组合方法,如加权平均、最大池和LSTM,都可以。有研究表明证明了拼接是最简单且有效的,且它不涉及其他参数需要学习。最后,计算用户与item之间的内积用来预测用户的未来行为:

推荐系统与GNN擦出的火花竟如此绚丽多彩






结论






本篇总结了一些GNN在推荐系统的应用,其实还有很多gnn算法没有介绍,如KGAT,融合了知识图谱辅助推荐。再如KARN和SCPR这两个模型,不是选出来一个匹配商品集就完事了,还要在图中找出来对应的路径作为推荐的解释,感兴趣的读者可以去查阅相关资料。




说个正事哈



由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:

(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。

感谢支持,比心推荐系统与GNN擦出的火花竟如此绚丽多彩



投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等

记得备注呦


推荐两个专辑给大家:
专辑 | 


整理不易,还望给个在看!

以上是关于推荐系统与GNN擦出的火花竟如此绚丽多彩的主要内容,如果未能解决你的问题,请参考以下文章

混合云与企业信息化能擦出什么火花?

腾讯云与国泰君安合作 证券行业迎接云服务将擦出什么火花

Android 关于BottomDialogSheet 与Layout擦出爱的火花?

阿里巴巴周畅:认知与推荐系统

区块链+政务 将擦出怎样的火花

万众瞩目下,AI能与游戏擦出怎样的火花?