专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

图机器学习(GML)ampampamp图神经网络(GNN)原

  项目链接:https:aistudio。baidu。comaistudioprojectdetail4990947?contributionType1欢迎fork欢迎三连!文章篇幅有限,部分程序出图不一一展示,详情进入项目链接即可图机器学习(GML)图神经网络(GNN)原理和代码实现(PGL)〔前置学习系列二〕
  上一个项目对图相关基础知识进行了详细讲述,下面进图GML
  networkx:NetworkX是一个Python包,用于创建、操作和研究复杂网络的结构、动力学和功能https:networkx。orgdocumentationstablereferencealgorithmsindex。htmlimportnumpyasnpimportrandomimportnetworkxasnxfromIPython。displayimportImageimportmatplotlib。pyplotaspltfromsklearn。metricsimportaccuracyscorefromsklearn。metricsimportroccurvefromsklearn。metricsimportrocaucscore1。图机器学习GML
  图学习的主要任务
  图学习中包含三种主要的任务:链接预测(Linkprediction)节点标记预测(Nodelabeling)图嵌入(GraphEmbedding)1。1链接预测(Linkprediction)
  在链接预测中,给定图G,我们的目标是预测新边。例如,当图未被完全观察时,或者当新客户加入平台(例如,新的LinkedIn用户)时,预测未来关系或缺失边是很有用的。
  详细阐述一下就是:
  GNN链接预测任务,即预测图中两个节点之间的边是否存在。在SocialRecommendation,KnowledgeGraphCompletion等应用中都需要进行链接预测。模型实现上是将链接预测任务看成一个二分类任务:将图中存在的边作为正样本;负采样一些图中不存在的边作为负样本;将正样例和负样例合并划分为训练集和测试集;可以采用二分类模型的评估指标来评估模型的效果,
  例如:AUC值在一些场景下例如大规模推荐系统或信息检索,模型需要评估topk预测结果的准确性,因此对于链接预测任务还需要一些其他的评估指标来衡量模型最终效果:MR(MeanRank)MRR(MeanReciprocalRank)Hitn
  MR,MRR,Hitn指标含义:假设整个图谱中共n个实体,评估前先进行如下操作:
  (1)将一个正确的三元组(h,r,t)中的头实体h或者尾实体t,依次替换成整个图谱中的其他所有实体,这样会产生n个三元组;
  (2)对(1)中产生的n个三元组分别计算其能量值,例如在TransE中计算hrt的值,这样n个三元组分别对应自己的能量值;
  (3)对上述n个三元组按照能量值进行升序排序,记录每个三元组排序后的序号;
  (4)对所有正确的三元组都进行上述三步操作MR指标:将整个图谱中每个正确三元组的能量值排序后的序号取平均得到的值;MRR指标:将整个图谱每个正确三元组的能量排序后的序号倒数取平均得到的值;Hitn指标:整个图谱正确三元组的能量排序后序号小于n的三元组所占的比例。因此对于链接预测任务来说,MR指标越小,模型效果越好;MRR和Hitn指标越大,模型效果越好。接下来本文将在Cora引文数据集上,预测两篇论文之间是否存在引用关系或被引用关系
  新LinkedIn用户的链接预测只是给出它可能认识的人的建议。
  在链路预测中,我们只是尝试在节点对之间建立相似性度量,并链接最相似的节点。现在的问题是识别和计算正确的相似性分数!
  为了说明图中不同链路的相似性差异,让我们通过下面这个图来解释:
  设N(i)是节点i的一组邻居。在上图中,节点i和j的邻居可以表示为:
  i的邻居:
  1。1。1相似度分数
  我们可以根据它们的邻居为这两个节点建立几个相似度分数。公共邻居:S(i,j)midN(i)capN(j)mid,即公共邻居的数量。在此示例中,分数将为2,因为它们仅共享2个公共邻居。
  Jaccard系数:S(i,j)frac{midN(i)capN(j)mid}{midN(i)cupN(j)mid},标准化的共同邻居版本。交集是共同的邻居,并集是:
  因此,Jaccard系数由粉红色与黄色的比率计算出:
  值是frac{1}{6}。AdamicAdar指数:S(i,j)sum{kinN(i)capN(j)}frac{1}{logmidN(k)mid}。对于节点i和j的每个公共邻居(commonneighbor),我们将1除以该节点的邻居总数。这个概念是,当预测两个节点之间的连接时,与少量节点之间共享的元素相比,具有非常大的邻域的公共元素不太重要。优先依附(Preferentialattachment):S(i,j)midN(i)midmidN(j)mid当社区信息可用时,我们也可以在社区信息中使用它们。1。1。2性能指标(Performancemetrics)
  我们如何进行链接预测的评估?我们必须隐藏节点对的子集,并根据上面定义的规则预测它们的链接。这相当于监督学习中的traintest的划分。然后,我们评估密集图的正确预测的比例,或者使用稀疏图的标准曲线下的面积(AUC)。
  参考链接:模型评估指标AUC和ROC:https:cloud。tencent。comdeveloperarticle15088821。1。3代码实践
  这里继续用空手道俱乐部图来举例:
  使用在前两篇文中提及到的Karate图,并使用python来进行实现导入空手道俱乐部图n34m78Gkaratenx。karateclubgraph()posnx。springlayout(Gkarate)nx。draw(Gkarate,cmapplt。getcmap(rainbow),withlabelsTrue,pospos)我们首先把有关图的信息打印出来:nGkarate。numberofnodes()mGkarate。numberofedges()print(Numberofnodes:dn)print(Numberofedges:dm)print(Numberofconnectedcomponents:dnx。numberconnectedcomponents(Gkarate))plt。figure(figsize(12,8))nx。draw(Gkarate,pospos)plt。gca()。collections〔0〕。setedgecolor(000000)现在,让删除一些连接,例如25的边:Takearandomsampleofedgesedgesubsetrandom。sample(Gkarate。edges(),int(0。25Gkarate。numberofedges()))removesomeedgesGkaratetrainGkarate。copy()Gkaratetrain。removeedgesfrom(edgesubset)绘制部分观察到的图,可以对比上图发现,去掉了一些边plt。figure(figsize(12,8))nx。draw(Gkaratetrain,pospos)可以打印我们删除的边数和剩余边数:edgesubsetsizelen(list(edgesubset))print(Deleted:,str(edgesubsetsize))print(Remaining:,str((medgesubsetsize)))JaccardCoefficient可以先使用Jaccard系数进行预测:predjaccardlist(nx。jaccardcoefficient(Gkaratetrain))scorejaccard,labeljaccardzip(〔(s,(u,v)inedgesubset)for(u,v,s)inpredjaccard〕)打印前10组结果print(predjaccard〔0:10〕)预测结果如下,其中第一个是节点,第二个是节点,最后一个是Jaccard分数(用来表示两个节点之间边预测的概率)然后我们可以使用ROCAUC标准来比较不同模型的性能,因为我们既有真实的边(label),也有预测边的概率(score)ComputetheROCAUCScore其中,FPR是FalsePositiveRate,TPR是TruePositiveRatefprjaccard,tprjaccard,roccurve(labeljaccard,scorejaccard)aucjaccardrocaucscore(labeljaccard,scorejaccard)print(aucjaccard)AdamicAdar现在计算AdamicAdar指数和对应的ROCAUC分数PredictionusingAdamicAdarpredadamiclist(nx。adamicadarindex(Gkaratetrain))scoreadamic,labeladamiczip(〔(s,(u,v)inedgesubset)for(u,v,s)inpredadamic〕)print(predadamic〔0:10〕)ComputetheROCAUCScorefpradamic,tpradamic,roccurve(labeladamic,scoreadamic)aucadamicrocaucscore(labeladamic,scoreadamic)print(aucadamic)ComputethePreferentialAttachment同样,可以计算PreferentialAttachment得分和对应的ROCAUC分数predpreflist(nx。preferentialattachment(Gkaratetrain))scorepref,labelprefzip(〔(s,(u,v)inedgesubset)for(u,v,s)inpredpref〕)print(predpref〔0:10〕)fprpref,tprpref,roccurve(labelpref,scorepref)aucprefrocaucscore(labelpref,scorepref)print(aucpref)绘制ROCAUC来评价预测的效果plt。figure(figsize(12,8))plt。plot(fprjaccard,tprjaccard,labelJaccardCoefficientAUC。2faucjaccard,linewidth4)plt。plot(fpradamic,tpradamic,labelAdamicAdarAUC。2faucadamic,linewidth4)plt。plot(fprpref,tprpref,labelPreferentialAttachmentAUC。2faucpref,linewidth4)plt。plot(〔0,1〕,〔0,1〕,k)plt。xlim(〔0。0,1。0〕)plt。ylim(〔0。0,1。0〕)plt。xlabel(Falsepositiverate)plt。ylabel(Truepositiverate)plt。title(ROCAUCCurve)plt。legend(loclowerright)plt。show()
  1。2节点标记预测(Nodelabeling)
  给定一个未标记某些节点的图,我们希望对这些节点的标签进行预测。这在某种意义上是一种半监督的学习问题。
  处理这些问题的一种常见方法是假设图上有一定的平滑度。平滑度假设指出通过数据上的高密度区域的路径连接地点可能具有相似的标签。这是标签传播算法背后的主要假设。
  标签传播算法(LabelPropagationAlgorithm,LPA)是一种快速算法,仅使用网络结构作为指导来发现图中的社区,而无需任何预定义的目标函数或关于社区的先验信息。
  单个标签在密集连接的节点组中迅速占据主导地位,但是在穿过稀疏连接区域时会遇到问题。
  半监督标签传播算法是如何工作?
  首先,我们有一些数据:x1,,xl,x{l1},,xninRp,,以及前l个点的标签:y1,,ylin1C。
  我们定义初始标签矩阵YinR{nimesC},如果xi具有标签yij则Y{ij}1,否则为0。
  该算法将生成预测矩阵FinR{nimesC},我们将在下面详述。然后,我们通过查找最可能的标签来预测节点的标签:
  hat{Yi}argmaxjF{i,j}
  预测矩阵F是什么?
  预测矩阵是矩阵F{star},其最小化平滑度和准确度。因此,我们的结果在平滑性和准确性之间进行权衡。
  问题的描述非常复杂,所以我将不会详细介绍。但是,解决方案是:
  F{star}((1alpha)IL{sym}){1}Y
  其中:参数alphafrac{1}{1mu}Y是给定的标签L{sym}是图的归一化拉普拉斯矩阵(Laplacianmatrix)
  如果您想进一步了解这个主题,请关注图函数的平滑度和流形正则化的概念。斯坦福有一套很好的标签图可以下载:https:snap。stanford。edudata
  Networkx直接实现标签传播:https:networkx。github。iodocumentationlatestreferencealgorithmsgeneratednetworkx。algorithms。community。labelpropagation。labelpropagationcommunities。html
  接下来我们用python来实现节点标签的预测。为了给我们使用到的标签添加更多的特征,我们需要使用来自Facebook的真实数据。你可以再这里下载,然后放到facebook路径下。
  Facebook数据已通过将每个用户的Facebook内部id替换为新值来匿名化。此外,虽然已经提供了来自该数据集的特征向量,但对这些特征的解释却很模糊。例如,如果原始数据集可能包含特征politicalDemocraticParty,则新数据将仅包含politicalanonymizedfeature1。因此,使用匿名数据可以确定两个用户是否具有相同的政治派别,但不能确定他们各自的政治派别代表什么。
  我已经把数据集放在目录里了,就不需要下载了1。2。1代码实现标签扩散Gfbnx。readedgelist(facebook3980。edges)nGfb。numberofnodes()mGfb。numberofedges()print(Numberofnodes:dn)print(Numberofedges:dm)print(Numberofconnectedcomponents:dnx。numberconnectedcomponents(Gfb))我们把图数据显示出来:mappingdict(zip(Gfb。nodes(),range(n)))nx。relabelnodes(Gfb,mapping,copyFalse)posnx。springlayout(Gfb)plt。figure(figsize(12,8))nx。draw(Gfb,nodesize200,pospos)plt。gca()。collections〔0〕。setedgecolor(000000)withopen(facebook3980。featnames)asf:fori,linenumerate(f):passnfeati1featuresnp。zeros((n,nfeat))fopen(facebook3980。feat,r)forlineinf:ifline。split()〔0〕inmapping:nodeidmapping〔line。split()〔0〕〕features〔nodeid,:〕list(map(int,line。split()〔1:〕))features2features1featid6特征选择id,自行设置labelsfeatures〔:,featid〕plt。figure(figsize(12,8))nx。draw(Gfb,cmapplt。getcmap(bwr),nodelistrange(n),nodecolorlabels,nodesize200,pospos)plt。gca()。collections〔0〕。setedgecolor(000000)plt。show()这个所选择的特征,在图中相对平滑,因此拥有较好的学习传播性能。为了阐述节点标签预测是如何进行的,我们首先要删掉一些节点的标签,作为要预测的对象。这里我们只保留了30的节点标签:random。seed(5)proportionnodes0。3labelednodesrandom。sample(Gfb。nodes(),int(proportionnodesGfb。numberofnodes()))knownlabelsnp。zeros(n)knownlabels〔labelednodes〕labels〔labelednodes〕plt。figure(figsize(12,8))nx。draw(Gfb,cmapplt。getcmap(bwr),nodelistrange(n),nodecolorknownlabels,nodesize200,pospos)plt。gca()。collections〔0〕。setedgecolor(000000)setnodebordercolortoblackplt。show()
  1。3图嵌入(GraphEmbedding)
  嵌入的学习方式与word2vec的skipgram嵌入的学习方式相同,使用的是skipgram模型。问题是,我们如何为Node2Vec生成输入语料库?数据要复杂得多,即(非)定向、(非)加权、(a)循环
  为了生成语料库,我们使用随机游走采样策略:
  在处理NLP或计算机视觉问题时,我们习惯在深度神经网络中对图像或文本进行嵌入(embedding)。到目前为止,我们所看到的图的一个局限性是没有向量特征。但是,我们可以学习图的嵌入!图有不同几个级别的嵌入:对图的组件进行嵌入(节点,边,特征)(Node2Vec)node2vec是一个用于图表示学习的算法框架。给定任何图,它可以学习节点的连续特征表示,然后可以用于各种下游机器学习任务。
  对图的子图或整个图进行嵌入(Graph2Vec)LearningDistributedRepresentationsofGraphs学习图的分布式表示最近关于图结构化数据的表示学习的工作主要集中在学习图子结构(例如节点和子图)的分布式表示。然而,许多图分析任务(例如图分类和聚类)需要将整个图表示为固定长度的特征向量。虽然上述方法自然不具备学习这种表示的能力,但图内核仍然是获得它们的最有效方法。然而,这些图内核使用手工制作的特征(例如,最短路径、graphlet等),因此受到泛化性差等问题的阻碍。为了解决这个限制,在这项工作中,我们提出了一个名为graph2vec的神经嵌入框架来学习任意大小图的数据驱动的分布式表示。图2vecs嵌入是以无监督的方式学习的,并且与任务无关。因此,它们可以用于任何下游任务,例如图分类、聚类甚至播种监督表示学习方法。我们在几个基准和大型现实世界数据集上的实验表明,graph2vec在分类和聚类精度方面比子结构表示学习方法有显着提高,并且可以与最先进的图内核竞争。1。3。1。节点嵌入(NodeEmbedding)
  我们首先关注的是图组件的嵌入。有几种方法可以对节点或边进行嵌入。例如,DeepWalk【http:www。perozzi。netprojectsdeepwalk】使用短随机游走来学习图中边的表示。我们将讨论Node2Vec,这篇论文由2016年斯坦福大学的AdityaGrover和JureLeskovec发表。
  作者说:node2vec是一个用于图表示学习的算法框架。给定任何图,它可以学习节点的连续特征表示,然后可以用于各种下游机器学习任务。
  该模型通过使用随机游走,优化邻域保持目标来学习节点的低维表示。
  Node2Vec的代码可以在GitHub上找到:https:github。comeliorcnode2vec
  部分程序出图不一一展示,详情进入项目链接即可2。图神经网络GNN2。1GNN引言
  图神经网络(GraphNeuralNetworks,GNN)综述链接:https:zhuanlan。zhihu。comp75307407?fromvoterspagetrue译文
  https:arxiv。orgpdf1901。00596。pdf原始文章最新版本V4版本
  近年来,深度学习彻底改变了许多机器学习任务,从图像分类和视频处理到语音识别和自然语言理解。这些任务中的数据通常在欧几里得空间中表示。然而,越来越多的应用程序将数据从非欧几里德域生成并表示为具有复杂关系和对象之间相互依赖关系的图。图数据的复杂性对现有的机器学习算法提出了重大挑战。最近,出现了许多关于扩展图数据深度学习方法的研究。在本次调查中,我们全面概述了数据挖掘和机器学习领域中的图神经网络(GNN)。我们提出了一种新的分类法,将最先进的图神经网络分为四类,即循环图神经网络、卷积图神经网络、图自动编码器和时空图神经网络。我们进一步讨论了图神经网络在各个领域的应用,并总结了图神经网络的开源代码、基准数据集和模型评估。最后,我们在这个快速发展的领域提出了潜在的研究方向
  神经网络最近的成功推动了模式识别和数据挖掘的研究。许多机器学习任务,如对象检测〔1〕、〔2〕、机器翻译〔3〕、〔4〕和语音识别〔5〕,曾经严重依赖手工特征工程来提取信息特征集,最近已经由各种端到端深度学习范例彻底改变,例如卷积神经网络(CNN)〔6〕、递归神经网络(RNN)〔7〕和自动编码器〔8〕。深度学习在许多领域的成功部分归功于快速发展的计算资源(例如GPU)、大训练数据的可用性以及深度学习从欧几里得数据(例如图像、文本、和视频)。以图像数据为例,我们可以将图像表示为欧几里得空间中的规则网格。卷积神经网络(CNN)能够利用图像数据的移位不变性、局部连通性和组合性〔9〕。因此,CNN可以提取与整个数据集共享的局部有意义的特征,用于各种图像分析。
  虽然深度学习有效地捕获了欧几里得数据的隐藏模式,但越来越多的应用程序将数据以图形的形式表示。例如,在电子商务中,基于图的学习系统可以利用用户和产品之间的交互来做出高度准确的推荐。在化学中,分子被建模为图形,并且需要确定它们的生物活性以进行药物发现。在引文网络中,论文通过引文相互链接,并且需要将它们分类到不同的组中。图数据的复杂性对现有的机器学习算法提出了重大挑战。由于图可能是不规则的,图可能具有可变大小的无序节点,并且来自图中的节点可能具有不同数量的邻居,导致一些重要的操作(例如卷积)在图像域中很容易计算,但是难以应用于图域。此外,现有机器学习算法的一个核心假设是实例相互独立。这个假设不再适用于图数据,因为每个实例(节点)通过各种类型的链接(例如引用、友谊和交互)与其他实例相关联。
  最近,人们对扩展图形数据的深度学习方法越来越感兴趣。受来自深度学习的CNN、RNN和自动编码器的推动,在过去几年中,重要操作的新泛化和定义迅速发展,以处理图数据的复杂性。例如,可以从2D卷积推广图卷积。如图1所示,可以将图像视为图形的特殊情况,其中像素由相邻像素连接。与2D卷积类似,可以通过取节点邻域信息的加权平均值来执行图卷积。
  二维卷积类似于图,图像中的每个像素都被视为一个节点,其中邻居由过滤器大小确定。2D卷积取红色节点及其邻居像素值的加权平均值。节点的邻居是有序的并且具有固定的大小。
  图卷积。为了得到红色节点的隐藏表示,图卷积运算的一个简单解决方案是取红色节点及其邻居节点特征的平均值。与图像数据不同,节点的邻居是无序且大小可变的。
  发展:
  图神经网络(GNN)Sperduti等人的简史。(1997)〔13〕首次将神经网络应用于有向无环图,这激发了对GNN的早期研究。图神经网络的概念最初是在Gori等人中概述的。(2005)〔14〕并在Scarselli等人中进一步阐述。(2009)〔15〕和Gallicchio等人。(2010)〔16〕。这些早期研究属于循环图神经网络(RecGNNs)的范畴。他们通过以迭代方式传播邻居信息来学习目标节点的表示,直到达到一个稳定的固定点。这个过程在计算上是昂贵的,并且最近已经越来越多地努力克服这些挑战〔17〕,〔18〕。受CNN在计算机视觉领域的成功的鼓舞,大量重新定义图数据卷积概念的方法被并行开发。这些方法属于卷积图神经网络(ConvGNN)的范畴。ConvGNN分为两个主流,基于光谱的方法和基于空间的方法。Bruna等人提出了第一个关于基于光谱的ConvGNN的杰出研究。
  (2013)〔19〕,它开发了一种基于谱图理论的图卷积。从那时起,基于谱的ConvGNN〔20〕、〔21〕、〔22〕、〔23〕的改进、扩展和近似值不断增加。基于空间的ConvGNN的研究比基于光谱的ConvGNN早得多。2009年,Micheli等人。〔24〕首先通过架构复合非递归层解决了图相互依赖问题,同时继承了RecGNN的消息传递思想。然而,这项工作的重要性被忽视了。直到最近,出现了许多基于空间的ConvGNN(例如,〔25〕、〔26〕、〔27〕)。代表性RecGNNs和ConvGNNs的时间线如表II的第一列所示。除了RecGNNs和ConvGNNs,在过去几年中还开发了许多替代GNN,包括图自动编码器(GAE)和时空图神经网络(STGNN)。这些学习框架可以建立在RecGNN、ConvGNN或其他用于图建模的神经架构上。
  综述总结如下:新分类我们提出了一种新的图神经网络分类。图神经网络分为四组:循环图神经网络、卷积图神经网络、图自动编码器和时空图神经网络。综合回顾我们提供了最全面的图数据现代深度学习技术概览。对于每种类型的图神经网络,我们都提供了代表性模型的详细描述,进行了必要的比较,并总结了相应的算法。丰富的资源我们收集了丰富的图神经网络资源,包括最先进的模型、基准数据集、开源代码和实际应用。本调查可用作理解、使用和开发适用于各种现实生活应用的不同深度学习方法的实践指南。未来方向我们讨论了图神经网络的理论方面,分析了现有方法的局限性,并在模型深度、可扩展性权衡、异质性和动态性方面提出了四个可能的未来研究方向。2。2神经网络类型
  在本节中,我们介绍了图神经网络(GNN)的分类,如表II所示。我们将图神经网络(GNN)分为循环图神经网络(RecGNN)、卷积图神经网络(ConvGNN)、图自动编码器(GAE)和时空图神经网络(STGNN)。图2给出了各种模型架构的示例。下面,我们对每个类别进行简要介绍。
  2。2。1循环图神经网络(RecGNNs,Recurrentgraphneuralnetworks)
  循环图神经网络(RecGNNs)大多是图神经网络的先驱作品。RecGNN旨在学习具有循环神经架构的节点表示。他们假设图中的一个节点不断地与其邻居交换信息消息,直到达到稳定的平衡。RecGNN在概念上很重要,并启发了后来对卷积图神经网络的研究。特别是,基于空间的卷积图神经网络继承了消息传递的思想。2。2。2卷积图神经网络(ConvGNNs,Convolutionalgraphneuralnetworks)
  卷积图神经网络(ConvGNNs)将卷积操作从网格数据推广到图数据。主要思想是通过聚合它自己的特征xv和邻居的特征xu来生成节点v的表示,其中uN(v)。与RecGNN不同,ConvGNN堆叠多个图卷积层以提取高级节点表示。ConvGNN在构建许多其他复杂的GNN模型中发挥着核心作用。图2a显示了用于节点分类的ConvGNN。图2b展示了用于图分类的ConvGNN。2。2。3图自动编码器(GAE,Graphautoencoders(GAEs))
  是无监督学习框架,它将节点图编码到潜在向量空间并从编码信息中重建图数据。GAE用于学习网络嵌入和图形生成分布。对于网络嵌入,GAE通过重构图结构信息(例如图邻接矩阵)来学习潜在节点表示。对于图的生成,一些方法逐步生成图的节点和边,而另一些方法一次全部输出图。图2c展示了一个用于网络嵌入的GAE。2。2。4时空图神经网络(STGNN,Spatialtemporalgraphneuralnetworks)
  旨在从时空图中学习隐藏模式,这在各种应用中变得越来越重要,例如交通速度预测〔72〕、驾驶员机动预期〔73〕和人类动作识别〔75〕。STGNN的关键思想是同时考虑空间依赖和时间依赖。许多当前的方法集成了图卷积来捕获空间依赖性,并使用RNN或CNN对时间依赖性进行建模。图2d说明了用于时空图预测的STGNN。
  具体公式推到见论文!2。3图神经网络的应用
  GNN在不同的任务和领域中有许多应用。尽管每个类别的GNN都可以直接处理一般任务,包括节点分类、图分类、网络嵌入、图生成和时空图预测,但其他与图相关的一般任务,如节点聚类〔134〕、链接预测〔135〕,图分割〔136〕也可以通过GNN来解决。我们详细介绍了基于以下研究领域的一些应用。计算机视觉(Computervision)计算机视觉GNN在计算机视觉中的应用包括场景图生成、点云分类和动作识别。识别对象之间的语义关系有助于理解视觉场景背后的含义。场景图生成模型旨在将图像解析为由对象及其语义关系组成的语义图〔137〕、〔138〕、〔139〕。另一个应用程序通过在给定场景图的情况下生成逼真的图像来反转该过程〔140〕。由于自然语言可以被解析为每个单词代表一个对象的语义图,因此它是一种很有前途的解决方案,可以在给定文本描述的情况下合成图像。分类和分割点云使LiDAR设备能够看到周围环境。点云是由LiDAR扫描记录的一组3D点。〔141〕、〔142〕、〔143〕将点云转换为k最近邻图或超点图,并使用ConvGNN探索拓扑结构。识别视频中包含的人类行为有助于从机器方面更好地理解视频内容。一些解决方案检测视频剪辑中人体关节的位置。由骨骼连接起来的人体关节自然形成了一个图形。给定人类关节位置的时间序列,〔73〕、〔75〕应用STGNN来学习人类动作模式。此外,GNN在计算机视觉中的适用方向数量仍在增长。它包括人物交互〔144〕、小样本图像分类〔145〕、〔146〕、〔147〕、语义分割〔148〕、〔149〕、视觉推理〔150〕和问答〔151〕。自然语言处理(Naturallanguageprocessing)自然语言处理GNN在自然语言处理中的一个常见应用是文本分类。GNN利用文档或单词的相互关系来推断文档标签〔22〕、〔42〕、〔43〕。尽管自然语言数据表现出顺序,但它们也可能包含内部图结构,例如句法依赖树。句法依赖树定义了句子中单词之间的句法关系。Marcheggiani等人。〔152〕提出了在CNNRNN句子编码器之上运行的句法GCN。SyntacticGCN基于句子的句法依赖树聚合隐藏的单词表示。巴斯廷斯等人。〔153〕将句法GCN应用于神经机器翻译任务。Marcheggiani等人。〔154〕进一步采用与Bastings等人相同的模型。〔153〕处理句子的语义依赖图。图到序列学习学习在给定抽象词的语义图(称为抽象意义表示)的情况下生成具有相同含义的句子。宋等人。〔155〕提出了一种图LSTM来编码图级语义信息。贝克等人。〔156〕将GGNN〔17〕应用于图到序列学习和神经机器翻译。逆向任务是序列到图的学习。给定句子生成语义或知识图在知识发现中非常有用交通Traffic准确预测交通网络中的交通速度、交通量或道路密度对于智能交通系统至关重要。〔48〕、〔72〕、〔74〕使用STGNN解决交通预测问题。他们将交通网络视为一个时空图,其中节点是安装在道路上的传感器,边缘由节点对之间的距离测量,每个节点将窗口内的平均交通速度作为动态输入特征。另一个工业级应用是出租车需求预测。鉴于历史出租车需求、位置信息、天气数据和事件特征,Yao等人。〔159〕结合LSTM、CNN和由LINE〔160〕训练的网络嵌入,形成每个位置的联合表示,以预测时间间隔内某个位置所需的出租车数量。推荐系统Recommendersystems基于图的推荐系统将项目和用户作为节点。通过利用项目与项目、用户与用户、用户与项目之间的关系以及内容信息,基于图的推荐系统能够产生高质量的推荐。推荐系统的关键是对项目对用户的重要性进行评分。结果,它可以被转换为链接预测问题。为了预测用户和项目之间缺失的链接,Van等人。〔161〕和英等人。〔162〕提出了一种使用ConvGNN作为编码器的GAE。蒙蒂等人。〔163〕将RNN与图卷积相结合,以学习生成已知评级的底层过程化学Chemistry在化学领域,研究人员应用GNN来研究分子化合物的图形结构。在分子化合物图中,原子被视为节点,化学键被视为边缘。节点分类、图分类和图生成是针对分子化合物图的三个主要任务,以学习分子指纹〔85〕、〔86〕、预测分子特性〔27〕、推断蛋白质界面〔164〕和合成化合物其他GNN的应用不仅限于上述领域和任务。已经探索将GNN应用于各种问题,例如程序验证〔17〕、程序推理〔166〕、社会影响预测〔167〕、对抗性攻击预防〔168〕、电子健康记录建模〔169〕、〔170〕〕、大脑网络〔171〕、事件检测〔172〕和组合优化〔173〕。2。4未来方向
  尽管GNN已经证明了它们在学习图数据方面的能力,但由于图的复杂性,挑战仍然存在。模型深度Modeldepth
  深度学习的成功在于深度神经架构〔174〕。然而,李等人。表明随着图卷积层数的增加,ConvGNN的性能急剧下降〔53〕。随着图卷积将相邻节点的表示推得更近,理论上,在无限数量的图卷积层中,所有节点的表示将收敛到一个点〔53〕。这就提出了一个问题,即深入研究是否仍然是学习图数据的好策略。可扩展性权衡Scalabilitytradeoff
  GNN的可扩展性是以破坏图完整性为代价的。无论是使用采样还是聚类,模型都会丢失部分图信息。通过采样,节点可能会错过其有影响力的邻居。通过聚类,图可能被剥夺了独特的结构模式。如何权衡算法的可扩展性和图的完整性可能是未来的研究方向。异质性Heterogenity
  当前的大多数GNN都假设图是同质的。目前的GNN很难直接应用于异构图,异构图可能包含不同类型的节点和边,或者不同形式的节点和边输入,例如图像和文本。因此,应该开发新的方法来处理异构图。动态Dynamicity
  图本质上是动态的,节点或边可能出现或消失,节点边输入可能会随时间变化。需要新的图卷积来适应图的动态性。虽然图的动态性可以通过STGNN部分解决,但很少有人考虑在动态空间关系的情况下如何执行图卷积。总结
  因为之前一直在研究知识提取相关算法,后续为了构建小型领域知识图谱,会用到知识融合、知识推理等技术,现在开始学习研究图计算相关。
  现在已经覆盖了图的介绍,图的主要类型,不同的图算法,在Python中使用Networkx来实现它们,以及用于节点标记,链接预测和图嵌入的图学习技术,最后讲了GNN应用。
  本项目参考了:maelfabien大神、以及自尊心3在博客orgithub上的贡献
  欢迎大家fork,后续将开始图计算相关项目以及部分知识提取技术深化!
  更多参考:
  https:github。commaelfabienMachineLearningTutorials
  项目链接:https:aistudio。baidu。comaistudioprojectdetail4990947?contributionType1欢迎fork欢迎三连!文章篇幅有限,部分程序出图不一一展示,详情进入项目链接即可

天猫双11隐藏订单现身去年全国700万人从中受益来源海外网想不到我做了这么多好事!近日,不少网友在社交平台晒出自己的淘宝隐藏订单。双11前夕,阿里巴巴基于链上公益技术,对国民级公益平台公益宝贝作了升级,这场持续多年全国累计7亿多爆笑神回复你们男生一般给女朋友备注的都有什么呀?喜欢的小伙伴们可以移动您尊贵的手指点击右上角关注哦,每日必更!聪明人怎样做?大熊现在差多少?提什么要求呢?2014VS2021这哪里像是同一个人笑哭这车还怎么开捂脸父母双标这心态太打妈妈电话,被挂断!打爸爸电话,还被挂断!她赶紧报警近日,江苏南京的陈女士给父母打电话却一连被拒接了多次感觉情况不妙的她立刻选择了报警当天下午南京鼓楼公安分局小市派出所接到市民陈女士的报警称她的父母正遭遇电信网络诈骗已去往银行请民警喝汤养生的注意事项如果说煲汤要讲究一定的方式方法,那么喝汤也要遵守一定的原则,什么时候喝怎样喝都有其特定的章法,喝得合理,则延年益寿,喝得不得法,则适得其反。因此,喝汤应注意以下一些事项。汤饭不能混又到了吃烤红薯的季节,但淀粉那么高,糖友真的能吃吗?声明本原创内容只做信息分享,不做任何医疗建议。请随意转发分享,转载请私信我。红薯,一般指番薯,其品种繁多,用途广泛,遍布世界各地,因其风味多功能性和潜在的健康益处而广受欢迎。如今又坚持尝试,希望能看到更好的自己医者教食事術著者牧田善二内容简介1。经常发困,精力不集中,身体状况不佳的主要原因是糖质中毒引起的,减少糖质摄取,促使血糖值下降,才能改善这些症状2。避免减少对以下食品的摄取罐装咖啡百菜不如白菜?3种黄金搭配,润肠健脾补营养,怎么吃都不腻俗话说百菜不如白菜,现如今正是白菜上市的时候,不妨常吃。中医认为白菜微寒味甘,有养胃生津除烦解渴利尿通便清热解毒之功。不过,白菜有大的有小的,它们的营养有什么差别吗?我们应该怎么挑丹参和三七都能通血管,哪个更好?能不能长期吃?真相来了中国心血管疾病的发病率和死亡率均居榜首,2019年农村和城市心血管病分别占死因的46。74和44。26,也就是每5例死亡当中就有两例属于心血管病。人体的血管就如同下水管一般遍布身体山东省泰安市11月最新通过审批的建设工程项目清单来了,共50个据中项网统计,2022年山东省泰安市重点项目陆续发布最新动态,工程涵盖机械电子电器环保农林水利教育科研等不同领域,项目清单如下表1。新泰市刘杜镇人民政府机关刘杜镇村内道路硬化项目22022年11月3日国内油价最新消息国内成品油本轮最高零售限价今日油价预期简报今日周四,本轮国内成品油最高零售限价调整周期第八个工作日,现有数据核算结果如下本轮最高零售限价预期上调146元每吨,较上一工作日预期涨幅增11月起多地核酸检测收费,多人混检最低3元人次近日,四川甘肃贵州等多地发布通知,11月起核酸检测要恢复收费。收费标准如何?人民日报健康客户端根据各地发布通知及当地部门的回应,各地核酸检测收费标准不一,一般情况下,单人单检费用1
孔融被满门抄斩,乞求曹操放过儿子,9岁儿子说了8个字成千古名言提起孔融,不少人可能首先想到的就是他四岁让梨的故事。那么孔融长大后都取得了哪些成就?他的结局又是怎样的呢?可能不少人就不知道了。孔融是孔子的第二十世孙,他的父亲曾担任过太山都尉,这补阴汤,一个补五脏之阴的方子,应对咽干口燥五心烦热耳鸣大家好,我是李医生中医常说瘦人多火,水常不足,什么意思?就是说身体消瘦的人,多是体内津液不足了,而导致津液不足的原因则是体内火旺,把身体内的水分都蒸发掉了,所以这样的人平常一般会出智能电视为何会跌下神坛,渐渐被冷落了?过来人道出五个原因电视机,不夸张地说,它是我们几代人的回忆。记得儿时,一家人围着在客厅,一起看电视节目的场景,还历历在目。随着科技的发展,传统电视机也升级换代为现在的智能电视。目前来说,传统的非智能2016年里约奥运会,郎平带领中国女排夺冠,有个重要原因是许家印2016年8月21日,中国女排的姑娘们第三次走上奥运会的最高领奖台。你可以为这场胜利找出一百个理由,但有个很重要的原因是许家印!2009年郎平离开美国女排主教练的岗位后,刚刚宣布自BNB链成为公链界的天花板,取得成功的原因是什么?BNB链简介BNB链(BinanceChain),简称BC,是以太坊的替代品,自成立以来发展迅速。出于多种原因,它成功地保持了其作为世界上最有价值的加密资产之一的地位。以太坊网络的55年叶剑英核对授衔名单时,看到一个名字出现了两次,这是何原因在阅读此文之前,麻烦您点击一下关注,既方便您进行讨论与分享,又给您带来不一样的参与感,感谢您的支持!前言1955年,叶剑英正在核对授衔名单。可当他看到名单上的两个名字后,又不禁看了强大的X1级太阳耀斑已经从太阳喷发出来太阳发出了强烈的太阳耀斑,整个活动周期在2022年10月2日美国东部时间下午4点25分(太平洋时间下午1点25分)达到顶峰。美国宇航局的太阳动力学观测站不断观察太阳,捕捉到了该事件研究发现即使是少量的运动也能极大地增加大脑的体积锻炼使身体和心灵都保持健康,但对于体育锻炼如何以及在哪些方面影响我们的大脑却知之甚少。在以前的研究中,大脑通常被视为一个整体,神经科学家和当前研究的主要作者FabienneFox说今日冷门巴黎圣日耳曼(欧冠)今晚又是备受关注的欧冠之夜,厂长经过一番猛烈的研究,认为巴黎圣日耳曼将会爆出冷门!且听我娓娓道来。每天下午都发,先关注一下防止想看时找不到哦!大巴黎欧冠之梦延续巴黎圣日耳曼总身价8今日中超沧州雄狮65分钟打卡下班武汉三镇赛季第二败体育说吧今天中超联赛进行第21轮的5场比赛!河北德比河北队05沧州雄狮!这场比赛是在山西大同进行的,也是河北队本赛季的首次回到主场进行的比赛。上半场第12分钟,苏恩祖助攻臧一锋破门绝地求生同黎明杀机跨界合作变身为恐怖生存游戏迎接万圣节的到来,绝地求生官方最近宣布了与不对称多人游戏黎明杀机的跨界活动,绝地变身为一款恐怖游戏,并开放许多道具奖励。活动时间为10月21日至11月7日,所有PUBG玩家可从游戏
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网