第八讲 图算法与图数据分析

一、图的基本知识

        图:关注节点、路径、边、子图结构

        图数据库:关注对图数据的存储、查询进行优化

        Graph AI(图智能):强调综合运用图的数据表示方法、图神经网络等方法进一步增强数据分析的广度与深度

二、基础图算法

三、图神经网络与图表示学习

1、图的形式化定义

        图的形式化定义:通常由节点集合V、边集合E组成,图中可能存在R种类型的边。 

        每条边可以描述为一个由就节点和边类型组成的三元组。

        不同的图按照图结构和类型可分为:有向图和无向图、带传送图和不带传送图、稀疏图和稠密图、有环图和无环图、同构图(图中只有一种类型的节点或一种类型的边)和异构图(图中存在多种类型的节点或多种类型的边)。

2、图表示学习

2.1 图表示学习的概念

        是利用表示学习技术将图中的每个节点映射到低维稠密的向量空间,得到一个向量表示。

        这个向量表示能够反映原先图谱中的一些结构或语义特性

        比如说在下面的图中,相同类型的节点被表述为相同颜色,且同类型节点在低维向量空间中呈现聚类的特点。

2.2 近二十年来图表示学习发展脉络:

        总的来说,图表示学习算法都是利用节点在图上的邻居节点信息,学习节点的表示。

        根据邻居节点定义的不同,可分为 基于随机游走的邻居序列算法模型 和 基于局部子图的邻居序列算法模型(GNN)。

        基于随机游走的邻居序列算法模型:通过随机游走得到邻居序列,定义节点的邻居信息

        基于局部子图的邻居序列算法模型(GNN):通过聚合节点周围的局部子图来定义节点的邻居信息。

2.3 基于随机游走的经典算法 DeepWalk

         借鉴了自然语言处理中词向量算法的思路(处在相似上下文中的词有着相似的语义、算法的基本处理单元是词、上下文是指一个句子序列)

        对应到图表示算法上:1、基本处理单元是图中的节点   2、节点的序列通过在图上进行随机游走得到   3、随机游走的路径定义了节点的结构上下文信息,使得:处在相似结构上下文中的节点也表达相似的信息。

2.4 基于随机游走的经典算法node2vec

        DeeoWalk中提供的随即游走策略使得图上相邻节点间学到的表示是相近的,这种相似性可看作内容相似性,但是有许多距离比较远的节点可能也是相似的,因为它们可能具有相似的子图结构(比如下面的U和S6节点)。

        但这种结构上的相似性可能因为距离较远无法被 DeeoWalk捕捉,因此node2vec提出了一种基于深度优先搜索DFS和广度优先搜索BFS的随机游走策略。

2.5 基于随机游走的经典算法LINE

        进一步考虑节点间的一阶近似和二阶近似,来弥补一阶近似的稀疏问题,并且更好的保留网络的全局结构。

        一阶近似:如下图中的节点 6和7 ,两者间连接的权重远大于其他节点

        二阶近似:如下图中的节点 5和6 ,两者共享的邻居节点较多

        前面提到的Deep Walk 和 node2vec 只适用于同构图

2.6 基于随机游走的经典算法Metapath2vec

        异构图中存在不同类型的节点或边,不同的节点和边的组合表示不同的语义。

        对于异构图如果不考虑节点类型,直接使用随机游走来定义节点序列,会导致模型偏向高频率类型的节点。

        因此Metapath2vec提出了基于 元路径 随机游走方法,在异构图中进行随即游走的同时保留图中的结构信息和语义信息。

        具体的,使用元路径事先定义好节点类型的变化规律(如下图中的APA、APVPA等),随机游走时按照元路径中的变化规律进行游走。

3、图神经网络系列

        主要通过聚合节点的周围邻居节点信息更新当前节点的表示,在节点间进行信息传播

3.1 GCN

        对于节点V在第K层的表示(绿色部分),首先求取邻居节点第K-1层特征的均值(红色部分),随后通过一个全连接层融合节点V自身与邻居节点的特征(橙色部分),最后通过非线性激活函数得到节点V在第K层的表示。

        经过多层的邻居特征融合后,每个节点将得到最终的输出向量

        其中节点在第0层的表示,通常为节点的初始特征表示

3.2 GAT

        在GCN聚合周围邻居特征的基础上考虑了不同邻居节点对当前节点特征的不同重要性

        因此GAT在节点特征融合时引入了 Attention机制 ,求取加权均值,其中权重的公式如图,每个节点—邻居节点对之间是并行计算的(操作高效)

3.3 GTN (Graph Transformer Network)

        适用于处理异构图

        在此模型中异构图使用三维张量来表示其邻接矩阵,首先设置一个软邻接矩阵选择机制来选择切片对应于不同关系下的图结构信息,再通过聚合操作得到一组新的图邻接矩阵,之后采用GCN等逐一编码节点信息,并将节点的表示向量拼接起来,用于下游任务。

3.4 图神经网络预训练 GPT-GNN

3.5 图神经网络预训练 GCC

四、图神经网络与知识图谱

        

1、图神经网络与知识图谱表示学习

       知识图谱表示学习算法的主要目的:是为知识图谱中的实体和关系学习低维向量表示,同时保留图谱中语义信息。

        学习到的实体和向量表示可以用来执行链接预测等任务

        知识图谱表示学习算法是基于不同的假设设计损失函数来学习实体和关系的向量表示

2、图神经网络与知识图谱构建

3、图神经网络与知识图谱对齐

        实体对齐:同一目标的实体或概念在不同的知识图谱中可能表述不同,将这些描述同一目标的实体或概念进行对齐合并,则可以将多个知识图谱进行融合,形成更完整的知识图谱。

4、总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值