CN114443911A - 一种图数据语义分析方法、装置、设备及可读存储介质 - Google Patents
一种图数据语义分析方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN114443911A CN114443911A CN202111627355.XA CN202111627355A CN114443911A CN 114443911 A CN114443911 A CN 114443911A CN 202111627355 A CN202111627355 A CN 202111627355A CN 114443911 A CN114443911 A CN 114443911A
- Authority
- CN
- China
- Prior art keywords
- graph
- neighbor
- order
- node
- real
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种图数据语义分析方法,该方法将图数据语义分析过程拆解为计算N阶内特征值、N阶外邻居特征以及特征结合三个部分,将最消耗资源的邻居特征的计算前移至离线阶段,在接收到用户发起的数据分析请求后,当某节点作为目标节点的N阶邻居节点时,取出预先缓存的X阶历史邻居特征即可恢复深度邻居建模计算的整个流程,可以在保证分析深度为N+X阶邻居特征的同时,使在线图数据库的查询阶数由N+X阶邻居降低到N阶邻居,极大地降低了在线图数据库的查询压力,保障了在线阶段计算的同时通过数据的轻量程度来加快计算速度,降低计算资源消耗。本发明还公开了一种图数据语义分析装置、设备及可读存储介质,具有相应的技术效果。
Description
技术领域
本发明涉及信息处理技术领域,特别是涉及一种图数据语义分析方法、装置、设备及可读存储介质。
背景技术
图数据是现实生活中广泛存在的一类数据,图中的边可以很好地刻画节点之间的非欧式距离的连接关系,由于图数据具备刻画复杂数据的能力,图数据挖掘已广泛应用在推荐系统、智能风控、知识图谱等多个领域。图神经网络就是应用于图数据挖掘的主要工具之一,图神经网络在计算过程中充分利用了图结构的特点,通过节点之间的连接进行消息传播聚合点或边上的数据,并结合神经网络强大的建模能力完成数据挖掘工作。
图神经网络优秀的挖掘能力建立在图数据的特殊结构上,然而在实际应用中,图数据的规模往往很大,譬如社交网络中图的规模可能达到近十亿点、百亿边的规模,在如此大规模的数据上,图神经网络的计算中尤其是涉及深层多跳邻居采样时进行图神经网络建模需要消耗巨大的存储和计算资源,这一问题导致图神经网络无法应用到有一定响应时间限制和实时性要求的在线计算场景中。
现有的图神经网络在线计算方法主要通过三种方案实现:1、直接在线查询进行计算,该种方案在处理多阶邻居的检索时,也需要巨大的资源开销,并且开销随着阶数的增加而呈指数倍增加,巨大的计算资源开销导致耗时难以达到实时的要求;2、离线建模,在线取出,该种方法只能取得使用过去的历史数据的计算结果,不能将最新的数据变化反应在本次计算中,很有可能会出现计算错误的情况;3、仅使用一阶邻居建模,该种方法分析的语义特征层面较窄,精准度有限。
综上所述,如何在保证语义分析深度的同时提升实时性,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种图数据语义分析方法、装置、设备及可读存储介质,以在保证语义分析深度的同时提升实时性。
为解决上述技术问题,本发明提供如下技术方案:
一种图数据语义分析方法,包括:
接收到用户发起的数据分析请求后,将待分析对象作为目标节点,并在线查询所述目标节点的实时N阶邻居图;
调用图神经网络根据所述实时N阶邻居图计算所述目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,作为实时特征;其中,所述图神经网络为根据所述实时N阶邻居图对应的离线图数据预先创建得到;
在图数据库中查找各所述N阶邻居节点的X阶历史邻居特征,作为离线特征;其中,所述X阶历史邻居特征为以所述离线图数据中各节点作为候选目标节点调用所述图神经网络计算得到;
聚合所述实时特征以及所述离线特征,生成分析结果。
可选地,所述的图数据语义分析方法,还包括:
若所述图数据库中没有第一节点的X阶历史邻居特征,以默认值填充;其中,所述第一节点为所述目标节点的N阶邻居节点。
可选地,在所述在线查询所述目标节点的实时一阶邻居图之后,还包括:
在所述图数据库中查询所述目标节点的离线N阶邻居图;
根据所述实时N阶邻居图对所述离线N阶邻居图进行数据更新合并。
可选地,所述X阶历史邻居特征的提取方法,包括:
确定所述离线图数据同一批次的若干节点;
以各所述节点为候选目标节点,同时采样各所述候选目标节点的X阶邻居节点;
调用所述图神经网络根据各所述候选目标节点以及对应的X阶邻居节点进行X阶历史邻居特征提取。
可选地,在所述调用所述图神经网络根据各所述候选目标节点以及对应的X阶邻居节点进行X阶历史邻居特征提取之前,还包括:
判断所述X阶邻居节点中是否存在边类型未达到设定的变类型组合,或者无邻居节点;
若存在边类型未达到设定的变类型组合,或者无邻居节点的所述X阶邻居节点,将缺乏的边类型以及邻居节点填充为默认值。
一种图数据语义分析装置,包括:
在线查询单元,用于接收到用户发起的数据分析请求后,将待分析对象作为目标节点,并在线查询所述目标节点的实时N阶邻居图;
在线计算单元,用于调用图神经网络根据所述实时N阶邻居图计算所述目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,作为实时特征;其中,所述图神经网络为根据所述实时N阶邻居图对应的离线图数据预先创建得到;
离线查询单元,用于在图数据库中查找各所述N阶邻居节点的X阶历史邻居特征,作为离线特征;其中,所述X阶历史邻居特征为以所述离线图数据中各节点作为候选目标节点调用所述图神经网络计算得到;
特征聚合单元,用于聚合所述实时特征以及所述离线特征,生成分析结果。
可选地,所述的图数据语义分析装置,还包括:默认填充单元,用于若所述图数据库中没有第一节点的X阶历史邻居特征,以默认值填充;其中,所述第一节点为所述目标节点的N阶邻居节点。
可选地,所述的图数据语义分析装置,还包括:离线更新单元;
所述离线更新单元用于:在所述在线查询所述目标节点的实时一阶邻居图之后,在所述图数据库中查询所述目标节点的离线N阶邻居图;根据所述实时N阶邻居图对所述离线N阶邻居图进行数据更新合并。
一种计算机设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述图数据语义分析方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述图数据语义分析方法的步骤。
本发明实施例所提供的方法,将图数据语义分析过程拆解为计算N阶内特征值、N阶外邻居特征以及特征结合三个部分,以改造最消耗资源的邻居特征的计算为切入点,将其实际计算前移至离线阶段,在接收到用户发起的数据分析请求后,当某节点作为目标节点的N阶邻居节点时,取出预先缓存的X阶历史邻居特征即可恢复深度邻居建模计算的整个流程,而X阶历史邻居特征缓存的方式还可以在保证分析深度为N+X阶邻居特征的同时,使在线图数据库的查询阶数由N+X阶邻居降低到N阶邻居,极大地降低了在线图数据库的查询压力,保障了在线阶段计算的同时通过数据的轻量程度来加快计算速度,降低计算资源消耗。
相应地,本发明实施例还提供了与上述图数据语义分析方法相对应的图数据语义分析装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种图数据语义分析方法的实施流程图;
图2为本发明实施例中一阶邻居的缓存示意图;
图3为本发明实施例中单点计算一致性示意图;
图4为本发明实施例中一种图数据语义分析过程的示意图;
图5为本发明实施例中一种图数据语义分析装置的结构示意图;
图6为本发明实施例中一种计算机设备的结构示意图。
具体实施方式
本发明的核心是提供一种图数据语义分析方法,可以在保证语义分析深度的同时提升实时性。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的图神经网络在线计算方法主要通过三种方案实现:
1、直接在线查询进行计算
这类方法思想较为朴素直接,当在线请求到来时,直接向后台服务器请求查询目标节点的多跳邻居图数据返回至在线服务器并通过图神经网络计算结果。
系统达到直接在线查询计算是最理想的结果,但是满足直接在线查询进行计算的核心在于后台能及时返回请求所需要的目标节点多跳邻居。这一需求依赖于强大的后台数据库,实际应用中一般使用图数据库来加快查询。然而即使是性能极好的专用于图数据查询的图数据库,在处理多阶邻居的检索时,也需要巨大的资源开销,并且开销随着阶数的增加而呈指数倍增加。而在线计算场景对响应速度往往是有要求的,例如一般的在线请求不会允许超过3秒,在数十亿点、百亿边规模的巨图上进行多跳邻居的检索往往无法满足该时间要求,使得在线深度图神经网络计算时无法使用直接查询并计算的方法。
2、离线建模,在线取出
由于离线环境往往比在线环境有着更加充分的存储资源和计算资源,并且离线环境下对响应时间没有限制,故可以在离线环境下对节点的任意阶邻居进行深度图神经网络建模,并将离线建模的输出结果存储至满足在线响应时间限制的系统中(如一些键值对存储和查询的数据库)。当在线查询到来时,再取出实现存储好的离线计算结果。
这类方法很好地利用了离线环境下无响应时间限制和资源丰富的优点,也可以满足多跳邻居的深度图神经网络建模,但是离线建模属于一种事先计算的方法,至少存在以下两点缺陷:其一是离线建模需要在事先计算好每个节点的模型输出值,这就使得数据的实时性较差,在线请求到来时只能取得使用过去的历史数据的计算结果,不能将最新的数据变化反应在本次计算中,这在一些对数据实时性要求较高的场景下存在致命缺陷,如风控场景中,历史时间点上该节点无风险,但是当前时点请求到来时数据发生变化,该节点应该存在较高的风险值,然而由于使用的是历史数据进行的模型计算,将错误地得出较低风险值的计算结果;其二是倘若在线请求时需要查询的节点是离线计算时的图中不存在的节点,那么该节点由于没有事先计算并存储好的计算结果,将会返回一个策略值或者发生错误等,这将极大地影响系统的鲁棒性。
3、仅使用一阶邻居建模
该方案的思想是当在线数据到达时,在线只构建或后台查询该节点的一阶邻居数据用于建模,放弃使用多跳邻居的图数据和多层神经网络。使用一阶邻居建模意味着在数据上只使用包含目标节点一阶邻居的图数据,同时神经网络的层数也只使用一层,避开了在子图采样阶段时进行多跳邻居的BFS或者DFS的计算开销。
仅使用一阶邻居建模的方法由于节点的一阶邻居规模往往很小,可以极大地缓解后台图数据库的查询压力,满足在线响应速度要求,使得整个系统可以达到在线计算的状态,并且通过在线计算的方式避免离线新节点在离线建模中无法取得计算结果的问题。然而一阶邻居建模的缺点也非常明显,即神经网络的深度只有一层,表达能力很弱。这是因为在图神经网络建模中,网络的深度即层数和采样子图的邻居跳数是一致的。这意味着如果想构建N层神经网络,就需要对节点采样N阶邻居子图用于聚合计算。近年来诸多神经网络的研究都标明:网络层数越高,模型的表达能力越强,建模效果也就越好,使用一阶邻居建模虽然可以在一定程度上保障数据和计算结果的实时性,但是模型的表达能力被限制在一层神经网络的水平上。
尽管上述几个方案可以用于图神经网络的在线计算,但是在实际应用中,他们存在各自不同的缺陷,导致效果不够理想或无法实际应用:
针对于此,本发明提出了一种图数据语义分析方法,该方法可以最大可能地在有限的资源和在线查询响应速度的要求下使系统性能近似于在线直接查询。
请参考图1,图1为本发明实施例中一种图数据语义分析方法的流程图,该方法包括以下步骤:
S101、接收到用户发起的数据分析请求后,将待分析对象作为目标节点,并在线查询目标节点的实时N阶邻居图;
数据分析请求为针对某一对象的特征分析请求,本实施例中对于待分析对象不做限定,可以为人、物、虚拟对象,具体可以根据实际的使用需求进行待分析对象的指定。比如数据分析请求可以为用户A贷款风险打分请求,则待分析对象为用户A。实时N阶邻居图指具有N阶邻居的图数据,比如数据分析请求为用户A贷款风险打分请求,则实时N阶邻居图可以根据用户A的征信记录生成的N阶图数据,其中N可以为任意正整数。
本实施例中在线查询目标节点的实时N阶邻居图的目的在于获取最新的N阶数据,以便在线实时计算N阶特征。N的数值设定可以根据在线计算能力以及精准度要求进行设定,在此不做限定。
当在线接收到数据分析请求时,首先确定待分析对象作为目标节点,解析目标节点对应的在线图数据,组织在线数据最新实时查询到的N度邻居图及最新的N度图关系中各点的特征,该N度图关系将作为参数打包发送到图数据库处理后端进行实时在线的特征分析。
S102、调用图神经网络根据实时N阶邻居图计算目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,作为实时特征;
本发明将图数据的语义分析过程拆解为三部分,实时的在线计算部分,历史特征的直接调取部分以及数据融合部分,本步骤的目的就是在于实现实时的在线计算。由于目标节点以及N阶邻居的自身特征、以及目标节点的N阶邻居的连接关系可能在实时在线过程中随时更新,为提升语义分析的精准度,本实施例中提出对于N阶内的目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,都根据实时的N阶邻居图进行在线计算。其中具体的计算过程可以参照相关技术中的计算方式,在此不再赘述。
本发明在在线调用阶段只需要查询N阶邻居节点即可,并且可以在在线场景中根据数据源构造目标节点的N阶邻居子图,此时模型的N阶邻居图结果和模型聚合计算都是实时的,并且对图数据库中不存在的点也可以计算,保证了分析过程的精准度。
其中,为减少资源投入,在线计算中调用的图神经网络为根据实时N阶邻居图对应的离线图数据预先创建得到,在离线计算中根据当时的离线图数据创建图神经网络,在在线计算中直接调用该网络进行计算,将图神经网络的创建过程前移至离线节点,保障了在线阶段计算的同时通过数据的轻量程度来加快计算速度,降低计算资源消耗。需要说明的是,离线创建的图神经网络的建模深度即计算时的采样邻居阶数,需要确认建模深度,然后建立对应的离线模型,而具体的建模深度可以根据实际调用时计算的阶数来确定,在此不做限定。
S103、在图数据库中查找各N阶邻居节点的X阶历史邻居特征,作为离线特征;
在图神经网络计算中,每一次聚合需要从目标节点出发获得目标节点及其周围邻居的子图。当图结构确定时,从节点出发获得的邻居结构是固定的,而邻居结构的固定性也代表了图神经网络计算的固定性。针对于此,本发明中以改造最消耗资源的邻居特征(neigh-hidden)计算阶段为切入点,将原本的计算过程拆解为更小的计算单元,将一次语义特征的分析过程拆分为N阶内特征以及N阶外邻居特征的计算,将最消耗资源的邻居特征(neigh-hidden)计算阶段的实际计算前移至离线阶段,离线缓存深度邻居节点的邻居特征,在离线阶段对每一个可能的候选目标节点按入边方向预先计算其位于计算图中的位置时的隐藏层向量,将深度邻居建模计算的中间结果缓存至每个节点的数据字段中,当该节点作为目标节点的邻居节点时,取出预先缓存的隐藏层向量即可恢复深度邻居建模计算的整个流程。该方案可以缓存任意阶数的邻居,如图2所示为一阶邻居的缓存示意图,图中左侧为图数据,右侧为对应缓存的所有节点的一阶邻居示意。
为了完成完整的深度邻居建模,需要离线缓存以所有节点为候选目标节点计算的邻居特征。在实时在线的计算中,即可直接获取并调用离线计算的(目标节点的)各邻居节点的X阶历史邻居特征,只要将在线查询的一度图与离线缓存的深度聚合结果进行融合,即可打通从目标节点开始的深度聚合计算过程。该种配置下,将计算单元合理分配到在线或离线阶段达到计算开销最优,保障了在线阶段计算时数据的轻量程度,降低计算资源消耗;同时将特征的计算从在线的N阶扩展为N+X阶,分析深度相比在线计算量显著增加,分析深度的增加从而可以提升特征分析的精准度。
需要说明的是,对于步骤S102和步骤S103的执行先后顺序,本实施例中不做限定,可以同时进行,也可以顺序进行,图1中仅以顺序进行为例,具体可以根据实际使用需要进行相应设定,在此不再赘述。
S104、聚合实时特征以及离线特征,生成分析结果。
在得到在线计算的实时特征,并获取到预先离线计算的离线特征之后,将两部分特征信息合并,即可得到对于分析对象的整体特征分析结果,而对于其中两部分特征信息的聚合实现过程,可以参照相关实现方式,比如可以以点乘方式进行聚合,也可以通过相加等方式,在此不再赘述。
基于上述介绍,本发明实施例所提供的技术方案将图数据语义分析过程拆解为计算N阶内特征值、N阶外邻居特征以及特征结合三个部分,以改造最消耗资源的邻居特征的计算为切入点,将其实际计算前移至离线阶段,在接收到用户发起的数据分析请求后,当某节点作为目标节点的N阶邻居节点时,取出预先缓存的X阶历史邻居特征即可恢复深度邻居建模计算的整个流程,而X阶历史邻居特征缓存的方式还可以在保证分析深度为N+X阶邻居特征的同时,使在线图数据库的查询阶数由N+X阶邻居降低到N阶邻居,极大地降低了在线图数据库的查询压力,保障了在线阶段计算的同时通过数据的轻量程度来加快计算速度,降低计算资源消耗。
需要说明的是,基于上述实施例,本发明实施例还提供了相应的改进方案。在优选/改进实施例中涉及与上述实施例中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在本文的优选/改进实施例中不再一一赘述。
在图数据库中针对目标节点的N阶邻居节点进行X阶邻居特征的查询调用过程中,若图数据库中没有第一节点(可以代指任意节点)的X阶历史邻居特征,缺少数据在聚合时会导致其聚合结果可能存在不确定的情况,影响最终运算结果离线和在线的一致性。上述实施例中对于该种情况下的处理方式不做限定,可选地,可以采用以默认值填充的方式。
为保障离线建模的批次计算和在线的单点计算,采用了将空边的聚合结果强制填充的方式来保障其计算结果的在线和离线一致性。例如,N为1时,点3为目标节点1的一阶邻居,若图数据库中没有以点3作为候选目标节点计算的X阶邻居特征,将点3的X阶邻居特征全部填充为零向量(也可以填充为其他默认值)。填充后,不存在缺乏的数据,这样就避免了聚合结果的未知性,提升了计算过程的稳定性以及精准度。
另外,在上述步骤之外,为进一步提升历史邻居特征计算的精准度,在在线查询目标节点的实时一阶邻居图之后,可以进一步在图数据库中查询目标节点的离线N阶邻居图;根据实时N阶邻居图对离线N阶邻居图进行数据更新合并。
则相应地,整体实现流程如下:在线请求到来时,首先解析在线数据,组织在线数据最新实时查询到的N度邻居图及最新的N度图关系中各点的特征,该N度图关系将作为参数打包发送到图数据库处理后端,图数据库根据目标节点查询对应离线存储的N度图关系,并进行数据的合并和更新,完成后返回到调用端,调用端通过查询到的N度图关系和点种保存的隐藏层向量结合图神经网络的计算拓扑将前向传播的计算状态恢复到多层神经网络既深层图结构的状态下,并根据最新的N度特征状态继续完成计算输出模型的计算值,即逾期概率分,最后返回到接口调用方。
通过在每次实时请求的响应中,对于获取到的实时N阶邻居图对离线存储的历史图数据进行更新,这样离线存储的图数据中以目标节点为中心的N阶邻居都为最新最实时的邻居,这样在根据离线图数据进行邻居特征的计算时,就可以根据更新后的邻居节点进行相应的计算,避免历史邻居节点信息在计算中对于精准度的影响,从而可以提升计算准确度。
上述实施例中对于存储于图数据库中的以每个节点作为候选目标节点时,计算的对应的X阶历史邻居特征的提取方法不做限定,为了提升聚合效果,保证单点计算的一致性,本实施例中介绍一种实现步骤,具体如下:
(1)确定离线图数据同一批次的若干节点;
(2)以各节点为候选目标节点,同时采样各候选目标节点的X阶邻居节点;
(3)调用图神经网络根据各候选目标节点以及对应的X阶邻居节点进行X阶历史邻居特征提取。
图神经网络的在线计算场景往往是单点的查询,而离线建模时一般是采用批次梯度下降的方法进行训练。如图3中,包含两种不同线型即不同类型的点和边,在离线的批次梯度下降中,为了节省内存消耗,将一批次的起始节点同时采样其邻居,如点1、3、6处于同一批共同计算。
通过对离线建模时同一批次的节点同时采样同时计算,可以避免单一节点逐一采样计算时所带来的较大的计算负担以及时间占用,同一批次的节点同时采样同时计算时,采样以及计算所带来的内存消耗相比单一计算大大减少,同时响应时间也会缩减。
而在上述步骤的基础上,在调用图神经网络根据各候选目标节点以及对应的X阶邻居节点进行X阶历史邻居特征提取之前,还可以进一步执行以下步骤:
(4)判断X阶邻居节点中是否存在边类型未达到设定的变类型组合,或者无邻居节点;
(5)若存在边类型未达到设定的变类型组合,或者无邻居节点的X阶邻居节点,将缺乏的边类型以及邻居节点填充为默认值。
在离线的批次梯度下降中,为了节省内存消耗,可以将一批次的起始节点同时采样其邻居,比如点1、3、6处于同一批共同计算时,点3只有一种类型的入边,点6是孤立点,点3和6在沿边的聚合运算时由于缺少某类型的边关系,导致其聚合结果可能存在不确定的情况,而在单点打分时点3、6只有自己连接的边类型关系才会进行聚合,这导致对边类型不完全的点来说批次打分和单点打分的结果可能存在不一致的情况,影响最终运算结果离线和在线的一致性。本实施例中提出对这类边类型不完全的点或孤立点,采用显示填充向量的方式来处理,如全部填充为零向量来保障批次计算和单点计算的一致性。
为加深对于上述实施例的整体实现步骤的理解,本实施例中介绍一种N=1,且X=1时的整体计算流程,如图4所示,其中图4中左上为四个图例。
将图数据语义分析的过程整体分为以下三个步骤:
第一步,由于图中每个点都有特征,可以计算节点自身特征的隐藏层向量self-hidden,即图中的白色无阴影向量;
具体地,以计算节点1的隐藏层向量为例,假设图神经网络是2层的,也就是会用到2阶邻居,这里以入边方向来讨论,按理说计算点1的两层神经网络,需要用到的信息有1的一度邻居即点2、4,以及点1的二度邻居,即点2,3,5;图神经网络的聚合过程是:3的特征聚合到2上,2、5的聚合到4上,然后2,4的聚合到1上,这里存储2,4聚合到1上后的这个隐藏层向量作为1的二阶邻居向量,可以看到这个向量实际计算过程是从3,5开始一层一层传播上来的。
第二步,由于图中每个节点都有邻居节点,若该节点是孤立点,则认为邻居节点数量为零,聚合结果为全零向量,所以可以为每个节点计算得到它的邻居特征聚合后的隐藏层向量neigh-hidden,如图中的点2,4聚合邻居向量后得到他们的neigh-hidden,将其离线存储在数据库中;
中间结果缓存的方式还可以使在线图数据库的查询阶数由高阶邻居降低到一阶邻居,极大地降低了在线图数据库的查询压力。
第三步,在每个节点上将self-hidden和neigh-hidden相结合,这里的结合运算是一种泛指,可以是相加或点乘等操作,由图神经网络的计算过程所具体定义,但是他们的特点都是输入self-hidden和neigh-hidden,输出一个运算结果向量。
为了满足离线缓存的向量可以正确参与计算,本实施例进行了在线深度计算的还原,通过改造图神经网络的聚合过程,使模型可以完成在一阶邻居数据上进行二阶以上邻居的数据聚合。
当在线查询时,如图所示查询节点1时,共有邻居点2、4、6、9,其中点2、4是之前的离线图中就包含的点数据,其的neigh-hidden已经存储在图数据库中,只要在线查询出2、4就可以获取其深度邻居建模的隐藏层向量。该方案可以兼容新点、新变的情况,如图中邻居数包含新的点9,新的边9->1和新的边6->1,其中点6在离线图中已存在,但是由于没有点6指向点1的边,所以它们没有连接。此时点6由于之前已在离线数据库中,同样可以查询到它的neigh-hidden,而点9由于是离线图库中不存在的纯新点,说明其没有其他邻居可以参与计算,这时使用默认值填充其neigh-hidden即可。这样便可以在在线查询一度邻居的条件下完成在线的深度邻居建模计算。
这样在在线计算的时候就只用到了点1的一度邻居的信息,不需要查询到点3,5也可以完成两阶邻居图的计算。
本实施例提供的实现步骤根据图神经网络的计算特点,拆分计算过程,先将图神经网络中倒数第二层的隐藏层中间计算结果通过离线计算保存至图数据库,在线计算时,只查询节点出发的一阶邻居作为输入的图数据,在节点特征聚合的过程中,将计算好的离线隐藏层结果插入计算数据流,从而完成深度多层神经网络的完整计算,其中一阶邻居的计算为实时数据计算。该步骤在最大可能地在有限的资源和在线查询响应速度的要求下使系统性能近似与在线直接查询计算方案,具备高度的可实施性,避免了离线建模的实时性效果差,同时允许在在线场景下使用深度多层图神经网络计算以及支持新节点计算。
相应于上面的方法实施例,本发明实施例还提供了一种图数据语义分析装置,下文描述的图数据语义分析装置与上文描述的图数据语义分析方法可相互对应参照。
参见图5所示,该装置包括以下模块:
在线查询单元110主要用于接收到用户发起的数据分析请求后,将待分析对象作为目标节点,并在线查询目标节点的实时N阶邻居图;
在线计算单元120主要用于调用图神经网络根据实时N阶邻居图计算目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,作为实时特征;其中,图神经网络为根据实时N阶邻居图对应的离线图数据预先创建得到;
离线查询单元130主要用于在图数据库中查找各N阶邻居节点的X阶历史邻居特征,作为离线特征;其中,X阶历史邻居特征为以离线图数据中各节点作为候选目标节点调用图神经网络计算得到;
特征聚合单元140主要用于聚合实时特征以及离线特征,生成分析结果。
在本发明的一种具体实施方式中,图数据语义分析装置还包括:默认填充单元,用于若图数据库中没有第一节点的X阶历史邻居特征,以默认值填充;其中,第一节点为目标节点的N阶邻居节点。
在本发明的一种具体实施方式中,图数据语义分析装置还包括:离线更新单元;
离线更新单元用于:在在线查询目标节点的实时一阶邻居图之后,在图数据库中查询目标节点的离线N阶邻居图;根据实时N阶邻居图对离线N阶邻居图进行数据更新合并。
相应于上面的方法实施例,本发明实施例还提供了一种计算机设备,下文描述的一种计算机设备与上文描述的一种图数据语义分析方法可相互对应参照。
该计算机设备包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现上述方法实施例的图数据语义分析方法的步骤。
具体的,请参考图6,为本实施例提供的一种计算机设备的具体结构示意图,该计算机设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机应用程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在计算机设备301上执行存储器332中的一系列指令操作。
计算机设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。
上文所描述的图数据语义分析方法中的步骤可以由计算机设备的结构实现。
相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种图数据语义分析方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的图数据语义分析方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
Claims (10)
1.一种图数据语义分析方法,其特征在于,包括:
接收到用户发起的数据分析请求后,将待分析对象作为目标节点,并在线查询所述目标节点的实时N阶邻居图;
调用图神经网络根据所述实时N阶邻居图计算所述目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,作为实时特征;其中,所述图神经网络为根据所述实时N阶邻居图对应的离线图数据预先创建得到;
在图数据库中查找各所述N阶邻居节点的X阶历史邻居特征,作为离线特征;其中,所述X阶历史邻居特征为以所述离线图数据中各节点作为候选目标节点调用所述图神经网络计算得到;
聚合所述实时特征以及所述离线特征,生成分析结果。
2.根据权利要求1所述的图数据语义分析方法,其特征在于,还包括:
若所述图数据库中没有第一节点的X阶历史邻居特征,以默认值填充;其中,所述第一节点为所述目标节点的N阶邻居节点。
3.根据权利要求1所述的图数据语义分析方法,其特征在于,在所述在线查询所述目标节点的实时一阶邻居图之后,还包括:
在所述图数据库中查询所述目标节点的离线N阶邻居图;
根据所述实时N阶邻居图对所述离线N阶邻居图进行数据更新合并。
4.根据权利要求1所述的图数据语义分析方法,其特征在于,所述X阶历史邻居特征的提取方法,包括:
确定所述离线图数据同一批次的若干节点;
以各所述节点为候选目标节点,同时采样各所述候选目标节点的X阶邻居节点;
调用所述图神经网络根据各所述候选目标节点以及对应的X阶邻居节点进行X阶历史邻居特征提取。
5.根据权利要求4所述的图数据语义分析方法,其特征在于,在所述调用所述图神经网络根据各所述候选目标节点以及对应的X阶邻居节点进行X阶历史邻居特征提取之前,还包括:
判断所述X阶邻居节点中是否存在边类型未达到设定的变类型组合,或者无邻居节点;
若存在边类型未达到设定的变类型组合,或者无邻居节点的所述X阶邻居节点,将缺乏的边类型以及邻居节点填充为默认值。
6.一种图数据语义分析装置,其特征在于,包括:
在线查询单元,用于接收到用户发起的数据分析请求后,将待分析对象作为目标节点,并在线查询所述目标节点的实时N阶邻居图;
在线计算单元,用于调用图神经网络根据所述实时N阶邻居图计算所述目标节点的自身特征、N阶邻居特征,以及N阶邻居节点的自身特征,作为实时特征;其中,所述图神经网络为根据所述实时N阶邻居图对应的离线图数据预先创建得到;
离线查询单元,用于在图数据库中查找各所述N阶邻居节点的X阶历史邻居特征,作为离线特征;其中,所述X阶历史邻居特征为以所述离线图数据中各节点作为候选目标节点调用所述图神经网络计算得到;
特征聚合单元,用于聚合所述实时特征以及所述离线特征,生成分析结果。
7.根据权利要求6所述的图数据语义分析装置,其特征在于,还包括:默认填充单元,用于若所述图数据库中没有第一节点的X阶历史邻居特征,以默认值填充;其中,所述第一节点为所述目标节点的N阶邻居节点。
8.根据权利要求6所述的图数据语义分析装置,其特征在于,还包括:离线更新单元;
所述离线更新单元用于:在所述在线查询所述目标节点的实时一阶邻居图之后,在所述图数据库中查询所述目标节点的离线N阶邻居图;根据所述实时N阶邻居图对所述离线N阶邻居图进行数据更新合并。
9.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述图数据语义分析方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述图数据语义分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111627355.XA CN114443911A (zh) | 2021-12-28 | 2021-12-28 | 一种图数据语义分析方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111627355.XA CN114443911A (zh) | 2021-12-28 | 2021-12-28 | 一种图数据语义分析方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443911A true CN114443911A (zh) | 2022-05-06 |
Family
ID=81366193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111627355.XA Pending CN114443911A (zh) | 2021-12-28 | 2021-12-28 | 一种图数据语义分析方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443911A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290560A (zh) * | 2023-11-23 | 2023-12-26 | 支付宝(杭州)信息技术有限公司 | 图计算任务中获取图数据的方法和装置 |
-
2021
- 2021-12-28 CN CN202111627355.XA patent/CN114443911A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290560A (zh) * | 2023-11-23 | 2023-12-26 | 支付宝(杭州)信息技术有限公司 | 图计算任务中获取图数据的方法和装置 |
CN117290560B (zh) * | 2023-11-23 | 2024-02-23 | 支付宝(杭州)信息技术有限公司 | 图计算任务中获取图数据的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240220765A1 (en) | Tape pasting mechanism with multiple functions of clutch-type synchronous punching, tape pasting and cutting | |
JP2000011005A (ja) | データ分析方法及び装置及びデータ分析プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CA2863089A1 (en) | A computer-implemented method for designing an industrial product modeled with a binary tree | |
CN114357105B (zh) | 地理预训练模型的预训练方法及模型微调方法 | |
CN109491989A (zh) | 数据处理方法及装置、电子设备、存储介质 | |
CN107590123A (zh) | 车载中地点上下文指代消解方法及装置 | |
CN114691148B (zh) | 模型推理加速方法、装置、电子设备及存储介质 | |
CN112989482B (zh) | Bim模型数据的生成方法及装置和构建方法及装置 | |
CN113568938B (zh) | 数据流处理方法、装置、电子设备及存储介质 | |
CN114356971A (zh) | 数据处理方法、装置以及系统 | |
CN113312175A (zh) | 一种算子确定、运行方法及装置 | |
CN114415965A (zh) | 一种数据迁移方法、装置、设备及存储介质 | |
CN111881345B (zh) | 基于位置上下文感知的神经协同过滤服务质量预测方法 | |
CN114443911A (zh) | 一种图数据语义分析方法、装置、设备及可读存储介质 | |
CN115186806A (zh) | 一种支持跨节点自动微分的分布式图神经网络训练方法 | |
CN112970011A (zh) | 记录查询优化中的谱系 | |
EP3923155A2 (en) | Method and apparatus for processing snapshot, device, medium and product | |
CN114897666B (zh) | 图数据存储、访问、处理方法、训练方法、设备及介质 | |
CN109241102A (zh) | 数据处理方法及装置、存储介质和电子设备 | |
EP2696298B1 (en) | Information processing device | |
CN114780021B (zh) | 副本修复方法、装置、电子设备及存储介质 | |
CN113726342B (zh) | 面向大规模图迭代计算的分段差值压缩与惰性解压方法 | |
CN117094378A (zh) | 一种模型的处理方法、数据处理方法、装置、介质及设备 | |
CN118363988A (zh) | 一种数据库过滤器执行方法、装置、设备、介质及产品 | |
CN116541438A (zh) | 一种数据查询方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |