CN115510077A - 基于消息传递的图数据更新方法、装置、设备及介质 - Google Patents
基于消息传递的图数据更新方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115510077A CN115510077A CN202211183320.6A CN202211183320A CN115510077A CN 115510077 A CN115510077 A CN 115510077A CN 202211183320 A CN202211183320 A CN 202211183320A CN 115510077 A CN115510077 A CN 115510077A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- updated
- graph data
- data
- 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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请适用于物联网技术领域,尤其涉及一种基于消息传递的图数据更新方法、装置、设备及介质。该方法获取当前时刻物联网拓扑中设备的交互数据,基于交互数据对当前的图数据中对应设备的节点的特征进行更新,提取图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点,获取待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量,对所有邻节点的邻居数量归一化得到权重,基于权重和邻节点的节点特征更新待更新节点的节点特征,得到更新的图数据,基于当前时刻的交互数据即可实现图数据的更新,而无需长时间、实时采集交互数据来更新图数据,从而可以减少数据量,同时能够保证图数据的可用性。
Description
技术领域
本申请适用于物联网技术领域,尤其涉及一种基于消息传递的图数据更新方法、装置、设备及介质。
背景技术
目前,深度学习在众多领域亮眼的表现使其成为了如今人工智能研究的主流方向,如人脸识别、语音助手、机器翻译等。但这些领域所涉及的数据都是单一结构的数据,而图数据在产业界有着更加广阔的应用场景,例如,社交网络、电子购物、物联网等场景中,图数据可以更好地体现网络拓扑关系。在这样的背景下,针对图数据进行处理的图神经网络能够实现图数据与深度学习技术的有效结合,从而较好地对深度学习进行改进。其中,最为广泛的就是图卷积网络,图卷积网络的核心思想是通过更新每个数据节点的特征,并利用这些更新的特征来训练下游任务,但是当前的图卷积网络的更新节点特征的逻辑较为简单,灵活性较差。针对物联网(Internet of Things,IoT)的使用场景中,存在大量的传感器、感应器、系统或平台等设备,设备间的通信形成了庞大的拓扑网络,并且这些设备每秒钟都会大量的数据,针对此复杂的场景,实时采集数据会导致数据量急剧增大,对存储库的要求较高,在使用时进行数据传输也会占用大量资源,不利于基于该场景下下游任务的使用。因此,如何在使用时对物联网拓扑下图数据优化处理,以保证图数据可用的情况下降低存储与传输的数据量成为亟待解决的问题。
发明内容
有鉴于此,本申请实施例提供了一种基于消息传递的图数据更新方法、装置、设备及介质,以解决如何在使用时对物联网拓扑下图数据优化处理,以保证图数据可用的情况下降低存储与传输的数据量的问题。
第一方面,本申请实施例提供一种基于消息传递的图数据更新方法,所述图数据更新方法包括:
获取当前时刻物联网拓扑中设备的交互数据,基于所述交互数据对已有图数据中对应设备的节点的特征进行更新,提取所述图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点;
获取所述待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量;
对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重;
将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新所述待更新节点的节点特征,得到更新的图数据。
在一实施方式中,提取每个邻节点的节点特征包括:
检测每个邻节点的特征状态;
若检测到一邻节点的特征状态为已更新,则确定所述邻节点的当前节点特征为所述邻节点的节点特征。
在一实施方式中,在检测每个邻节点的特征状态之后,还包括:
若检测到所述邻节点的特征状态为未更新,则确定所述邻节点的节点特征为空。
在一实施方式中,获取所述待更新节点的所有邻节点包括:
获取所述待更新节点的消息数据,分析所述待更新节点的消息数据的发送节点;
将所述发送节点作为所述待更新节点的邻节点。
在一实施方式中,提取每个邻节点的邻居数量包括:
针对任一邻节点,获取所述邻节点的消息数据,确定所述邻节点的消息数据对应的所有发送节点;
统计所有发送节点的个数,其中,将所有发送节点中表征为同一个节点的发送节点统计为1。
在一实施方式中,对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值包括:
使用Softmax函数对所有邻节点的邻居数量进行归一化,计算得到每个邻节点的归一化值。
第二方面,本申请实施例提供一种基于消息传递的图数据更新装置,所述图数据更新装置包括:
节点确定模块,用于获取当前时刻物联网拓扑中设备的交互数据,基于所述交互数据对已有图数据中对应设备的节点的特征进行更新,提取所述图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点;
邻节点获取模块,用于获取所述待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量;
权重确定模块,用于对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重;
特征更新模块,用于将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新所述待更新节点的节点特征,得到更新的图数据。
在一实施方式中,所述邻节点获取模块包括:
状态检测单元,用于检测每个邻节点的特征状态;
第一特征确定单元,用于若检测到一邻节点的特征状态为已更新,则确定所述邻节点的当前节点特征为所述邻节点的节点特征。
在一实施方式中,所述邻节点获取模块还包括:
第二特征确定单元,用于在检测每个邻节点的特征状态之后,若检测到所述邻节点的特征状态为未更新,则确定所述邻节点的节点特征为空。
在一实施方式中,所述邻节点获取模块包括:
分析单元,用于获取所述待更新节点的消息数据,分析所述待更新节点的消息数据的发送节点;
邻节点确定单元,用于将所述发送节点作为所述待更新节点的邻节点。
在一实施方式中,所述邻节点获取模块包括:
发送节点确定单元,用于针对任一邻节点,获取所述邻节点的消息数据,确定所述邻节点的消息数据对应的所有发送节点;
统计单元,用于统计所有发送节点的个数,其中,将所有发送节点中表征为同一个节点的发送节点统计为1。
在一实施方式中,所述权重确定模块包括:
归一化单元,用于使用Softmax函数对所有邻节点的邻居数量进行归一化,计算得到每个邻节点的归一化值。
第三方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的图数据更新方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的图数据更新方法。
本申请实施例与现有技术相比存在的有益效果是:本申请获取当前时刻物联网拓扑中设备的交互数据,基于交互数据对当前的图数据中对应设备的节点的特征进行更新,提取所述图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点,获取所述待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量,对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重,将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新所述待更新节点的节点特征,得到更新的图数据,基于当前时刻的交互数据即可实现图数据的更新,而无需长时间、实时采集交互数据来更新图数据,从而可以减少数据量,同时能够保证图数据的可用性,且实现通过邻节点关联的情况对图数据中一节点的特征更新,通过消息传递方式可知节点与邻节点的关系实现图数据的更新,能够保证下游任务的使用。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例一提供的一种基于消息传递的图数据更新方法的一应用环境示意图;
图2是本申请实施例二提供的一种基于消息传递的图数据更新方法的流程示意图;
图3是本申请实施例三提供的一种基于消息传递的图数据更新方法的流程示意图;
图4是本申请实施例四提供的一种基于消息传递的图数据更新装置的结构示意图;
图5是本申请实施例五提供的一种计算机设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
应理解,以下实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
为了说明本申请的技术方案,下面通过具体实施例来进行说明。
本申请实施例一提供的一种基于消息传递的图数据更新方法,可应用在如图1的应用环境中,其中,客户端与服务端进行通信。其中,客户端包括但不限于掌上电脑、桌上型计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、云端计算机设备、个人数字助理(personal digital assistant,PDA)等计算机设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
参见图2,是本申请实施例二提供的一种基于消息传递的图数据更新方法的流程示意图,上述基于消息传递的图数据更新方法应用于图1中的服务端,服务端对应的计算机设备连接相应的数据库,以获取数据库中相应的图数据,数据库中数据为历史的图数据。上述计算机设备还可以连接相应的客户端,客户端为用户所操作,用户可以通过客户端向服务端提供实时的用于形成图数据的原始数据。如图2所示,该基于消息传递的图数据更新方法可以包括以下步骤:
步骤S201,获取当前时刻物联网拓扑中设备的交互数据,基于交互数据对当前的图数据中对应设备的节点的特征进行更新,提取图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点。
本申请中,物联网拓扑中设备之间通过消息的方式进行交互,交互的内容可以构成对应设备的数据,而在数据格式下表征物联网拓扑时,将每个设备作为图数据中一个节点,对应的交互数据即为节点的特征。
正常情况下,对节点特征的更新需要获取到所有节点的新特征,而在一个时刻内不可能获取到所有设备的交互数据,使用长时间的采集能够获取到所有设备的交互数据,但是长时间采集会采集到大量的数据,不利于存储和传输。
采集当前时刻的设备的交互数据,用来更新当前的图数据中对应设备的节点的特征即可,更新后将节点的特征状态置位已更新,针对为更新的节点使用步骤S202至步骤S204的过程进行更新。
消息传递可以是指任两个物体之间进行的交互等,物体可以为实际物体,例如,手机、服务器等设备,物体还可以为虚拟物体,例如,某一系统中设置的流程、业务等节点。图数据为表征为类似图表形式的数据,图数据中包含至少一个数据节点,数据节点对应有自身的节点数据或者节点特征等,数据节点之间通过边连接,边用于表征数据节点之间的关系,拥有消息传递的两个数据节点之间即可以用一个边表示,其中,数据节点的连接形成类似于节点的拓扑网络图,即为图数据。
图数据中节点也即是上述的数据节点,数据节点中可以包含数据信息、数据特征信息以及一些表征属性的信息,其中,表征属性的信息可以包括表征数据节点特征的状态的属性信息,该属性信息可以判断对应的数据节点中特征是否已经进行了更新。例如,如果节点的特征状态为已更新,针对该属性信息可以标记为1,如果节点的特征状态为未更新,针对该属性信息可以标记为0。
图数据更新指令可以为客户端发出,用户在使用客户端连接服务端,从而根据需求来判断是否需要对图数据进行更新,进而在需要更新时发出更新指令。另外,图数据更新指令也可以为服务端,服务端在执行相应的流程时触发图数据的更新,进而生成更新指令,并执行后续的步骤。
步骤S202,获取待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量。
本申请中,邻节点即为邻居节点,可以是指与当前一节点相关联的节点,例如,在图数据中通过边连接的两个节点,可以互相为对方节点的邻节点。
在上述确定待更新节点之后,对该待更新节点的边进行识别,具体可以是分析该待更新节点的边数据,从边数据中确定对应节点的编号、名称等唯一表征节点的标识信息,依据标识信息确认对应的邻居节点。
每个邻节点均含有自身的数据信息、数据特征信息以及一些表征属性的信息,并且邻节点作为一个节点而言,同样具有邻居节点,并且采用与上述当前一节点的分析方式相同,即分析该邻节点的边数据,从边数据中确定与该邻节点边连接的节点的标识信息,依据标识信息确认邻居节点。
因而,对任一个邻节点而言,对其对应的邻居节点进行统计,统计的邻居节点的和即可得到邻居数量,进一步地,该邻居数量中可以不将待更新节点统计入内。
节点特征可以是指节点中的数据信息、数据特征信息等,还可以是指对一些数据进行特征编码后的编码特征,例如,数据的向量表示。
在一实施方式中,提取每个邻节点的节点特征包括:
检测每个邻节点的特征状态;
若检测到一邻节点的特征状态为已更新,则确定邻节点的当前节点特征为邻节点的节点特征。
其中,在确定邻节点之后,获取邻节点中表征节点特征的特征状态的属性信息,其中,如果节点的特征状态为已更新,针对该属性信息可以标记为1,如果节点的特征状态为未更新,针对该属性信息可以标记为0,因而可以判断邻节点的特征状态。
如果邻节点的特征状态为已更新,则可以说明邻节点当前的节点特征为最新的节点特征,可以用于后续的更新使用。如果邻节点的特征状态为未更新,则可以说明邻节点的节点特征为旧的节点特征,根据用户的需求,可以设定使用旧的节点特征用于后续的其他节点的节点特征的更新。
在一实施方式中,在检测每个邻节点的特征状态之后,还包括:
若检测到邻节点的特征状态为未更新,则确定邻节点的节点特征为空。
其中,在上述实施方式的基础上,在后续其他节点的节点特征更新时,也可以设定避免使用旧的节点特征,即如果邻节点的节点特征为未更新,则将该邻节点的节点特征定义为空,用于后续的更新使用。此时,邻节点的节点特征为未更新,因而在后续计算其他节点的节点特征时起到的作用为零。
在一实施方式中,获取待更新节点的所有邻节点包括:
获取待更新节点的消息数据,分析待更新节点的消息数据的发送节点;
将发送节点作为待更新节点的邻节点。
其中,在实时的应用场景中,节点可以为拓扑网络中任一个设备,针对当前的一个节点而言,在获取该节点的所有邻节点时,可以获取该节点的消息数据,并对消息数据进行分析,从而确定消息数据的发送方,该发送方所属的设备对应的节点为一个邻节点。
对消息数据的分析得到邻节点,与上述对边数据的分析得到邻节点的本质是相同的,均为采用消息传递机制,即两个节点之间进行了交互,儿菜图数据中存在历史数据和实时数据两种情况,实时数据即采用消息数据的分析,历史数据即采用边数据的分析。
在一实施方式中,提取每个邻节点的邻居数量包括:
针对任一邻节点,获取邻节点的消息数据,确定邻节点的消息数据对应的所有发送节点;
统计所有发送节点的个数,其中,将所有发送节点中表征为同一个节点的发送节点统计为1。
其中,针对邻居数量,在对实时数据进行统计时,所采用的方式与上述分析邻节点的方式相类似,即,在获取该节点的所有邻节点时,可以获取该节点的消息数据,并对消息数据进行分析,从而确定消息数据的发送方,该发送方所属的设备对应的节点为一个邻节点。
在确定了发送节点之后,针对同一个节点,也即是表征同一节点的设备而言,虽然消息数据存在多条,但只能够算作一个邻节点,因而,在统计时只能够记为1。
举例说明,如果节点v1为待更新节点,该节点v1的邻节点为节点v2、节点v3、节点v4,其中,经过对消息数据的分析,节点v2的邻节点为节点v21(交互了两条消息数据)、节点v22、节点v23,节点v3的邻节点为节点v31、节点v32、节点v33、节点v34,节点v4的邻节点为节点v41(交互了五条消息数据)、节点v42、节点v43。节点v2的邻居数量为3,节点v3的邻居数量为4,节点v4的邻居数量为3,可见,消息数据对应的同一个节点即为数量1。
步骤S203,对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重。
本申请中,每个邻节点均对应一个邻居数量,例如,一个节点vi,对应的邻居数量ki,归一化即是对ki进行处理,根据ki的大小来分配权重。
其中,归一化可以为零-均值规范化(即z-score标准化)和最小-最大规范化(即0-1归一化),当然,还可以采用其他皈依的方法,如递归法等。
0-1归一化为一种最简单的归一化方法,将数据值映射到[0,1]之间,其缺点是若数值集中且某个数值很大,则规范化后各值接近于0,并且将会相差不大。在不同的使用场景,根据数据量的大小、计算效率或者对精准度的要求,可以采用不同的归一化方式。
可知,当一个邻节点的邻居数量较多时,对应的权重越大,当一个邻节点的邻居数量较少时,对应的权重越小,即邻节点的邻居节点越多,应当拥有更大的“话语权”,可用于后续更节点时使用。
归一化之后得到每个邻节点对应的归一化值,该归一化值即可作为邻节点的权重。
步骤S204,将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新待更新节点的节点特征,得到更新的图数据。
本申请中,为了寻求对待更新节点所使用的节点特征,一般采用人为赋予节点特征,而本申请是使用邻节点来得到更新时使用的节点特征。
将邻节点的节点特征与该邻节点的权重相乘,再将每个邻节点的相乘结果相加,最终的结果即可作为待更新节点更新时所使用的节点特征,从而以邻节点来更新上述待更新节点,得到更新的图数据,无需不间断的使用实时采集的数据进行图数据的更新,可以避免长时间采集数据,降低采集的数据量。
对于一个节点v1,找到其所有的邻居节点,然后将邻居节点的特征相加并求均值,作为节点v1的新特征。具体实现过程如下:
给定的图数据为G(V,E),节点集合为V={v1,v2,...,vn},节点特征集合为X={x1,x2,...,xn},此时,
对于图数据G(V,E)中的一个节点vi,找到其邻居集合对于该邻居集合获取这些邻居节点所包含的邻居数量Count(vi)=[k1,k2,...,kl],对Count(vi)=[k1,k2,...,kl]进行归一化,得到每个k对应的归一化值,即为对应邻节点的权重对应邻节点的特征为
每个邻居节点的特征乘以其权重来更新节点vi的更新特征,公式如下:
举例说明,图卷积网络训练中使用图数据时,可以对图数据进行更新或者生成操作,在更新时改变图数据中一个节点的节点特征,即可对该图数据中所有节点的节点特征进行更新,在生成时生成一个新的节点并为该新的节点定义邻节点等,根据该新的节点的邻节点即可以得到该新的节点的更新用的节点特征。
本申请实施例在获取到图数据更新指令时,提取图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点,获取待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量,对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重,将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新待更新节点的节点特征,得到更新的图数据,基于当前时刻的交互数据即可实现图数据的更新,而无需长时间、实时采集交互数据来更新图数据,从而可以减少数据量,同时能够保证图数据的可用性,且实现通过邻节点关联的情况对图数据中一节点的特征更新,通过消息传递方式可知节点与邻节点的关系实现图数据的更新,能够保证下游任务的使用。
参见图3,是本申请实施例三提供的一种基于消息传递的图数据更新方法的流程示意图,如图3所示,该基于消息传递的图数据更新方法可以包括以下步骤:
步骤S301,获取当前时刻物联网拓扑中设备的交互数据,基于交互数据对当前的图数据中对应设备的节点的特征进行更新,提取图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点。
步骤S302,获取待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量。
其中,步骤S301至步骤S302与上述步骤S201至步骤S202的内容相同,可参考步骤S201至步骤S202的描述,在此不再赘述。
步骤S303,使用Softmax函数对所有邻节点的邻居数量进行归一化,计算得到每个邻节点的归一化值。
本申请中,使用递归的方式对邻居数量进行归一化,其中,所有邻节点的邻居数量可以表征为Count(vi)=[k1,k2,...,ki],归一化可以利用Softmax函数进行计算,公式如下:
αv=Softmax(Count(vi)),
式中,αv表征任一邻节点的权重。
本申请中,基于的基本思想是低度节点(即邻居少)会对邻居节点产生更大的影响,而高度节点(即邻居多)则会产生较低的影响。
Softmax函数的取值在0-1之间,且在0.5处为中心对称,并且越靠近x=0的取值斜率越大。机器学习中一个重要的预测模型逻辑回归(LR)就是基于Softmax函数实现的。LR模型的主要任务是给定一些历史的{X,Y},其中X是样本n个特征值,Y的取值是{0,1}代表正例与负例,通过对这些历史样本的学习,从而得到一个数学模型,给定一个新的X,能够预测出Y。LR模型是一个二分类模型,即对于一个X,预测其发生或不发生。但事实上,对于一个事件发生的情况,往往不能得到100%的预测,因此LR可以得到一个事件发生的可能性,超过50%则认为事件发生,低于50%则认为事件不发生。从LR的目的上来看,在选择函数时,有两个条件是必须要满足的:
1.取值范围在0~1之间。
2.对于一个事件发生情况,50%是其结果的分水岭,选择函数应该在0.5中心对称。
基于此,得到的权重更加准确,有助于在后续应用环境中使用。
步骤S304,确定每个邻节点的归一化值为对应邻节点的权重。
步骤S305,将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新待更新节点的节点特征,得到更新的图数据。
其中,步骤S304至步骤S305与上述步骤S203至步骤S204的部分内容相同,可参考步骤S203至步骤S204的描述,在此不再赘述。
举例说明,上述的节点更新特征的过程可以在数据填充或者数据补全的场景中使用,很多知识图谱都会将每条信息以三元组(h,r,t)形式表示,其包括:两个实体元,即元h为头实体和元t为尾实体,以及一个关系元,即元r为关系。知识图谱中包含有大量这样的三元组,但这些三元组中的一部分时常存在不完整现象,缺少某个或某些元,这时就需要对三元组进行补全,补全就是预测出三元组中缺失的元,补全知识图谱就是补全知识图谱中所有的不完整三元组。在现实世界中,知识图谱普遍存在着长尾关系,也就是说,很大一部分数据只有很少的训练实例,对于稀疏的长尾关系,由于缺乏足够的训练三元组,大大限制了知识图谱补全工作的有效开展。基于此,在构建得到知识图谱之后,针对其中一些补全的数据,可以采用本申请中节点更新方式进行更新。
本申请实施例在获取到图数据更新指令时,提取图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点,获取待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量,使用Softmax函数对所有邻节点的邻居数量进行归一化,计算得到每个邻节点的归一化值,确定每个邻节点的归一化值为对应邻节点的权重,将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新待更新节点的节点特征,实现通过邻节点关联的情况对图数据中一节点的特征更新,通过消息传递方式可知节点与邻节点的关系,从而可以较为灵活地实现节点特征更新,可在关系较为复杂场景中使用,有助于提高复杂场景下图卷积网络训练下游任务的准确率。
对应于上文实施例的基于消息传递的图数据更新方法,图4示出了本申请实施例四提供的基于消息传递的图数据更新装置的结构框图,上述图数据更新装置应用于图1中的服务端,服务端对应的计算机设备连接相应的数据库,以获取数据库中相应的图数据,数据库中数据为历史的图数据。上述计算机设备还可以连接相应的客户端,客户端为用户所操作,用户可以通过客户端向服务端提供实时的用于形成图数据的原始数据。为了便于说明,仅示出了与本申请实施例相关的部分。
参见图4,该图数据更新装置包括:
节点确定模块41,用于获取当前时刻物联网拓扑中设备的交互数据,基于交互数据对当前的图数据中对应设备的节点的特征进行更新,提取图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点;
邻节点获取模块42,用于获取待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量;
权重确定模块43,用于对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重;
特征更新模块44,用于将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新待更新节点的节点特征,得到更新的图数据。
在一实施方式中,上述邻节点获取模块42包括:
状态检测单元,用于检测每个邻节点的特征状态;
第一特征确定单元,用于若检测到一邻节点的特征状态为已更新,则确定邻节点的当前节点特征为邻节点的节点特征。
在一实施方式中,上述邻节点获取模块42还包括:
第二特征确定单元,用于在检测每个邻节点的特征状态之后,若检测到邻节点的特征状态为未更新,则确定邻节点的节点特征为空。
在一实施方式中,上述邻节点获取模块42包括:
分析单元,用于获取待更新节点的消息数据,分析待更新节点的消息数据的发送节点;
邻节点确定单元,用于将发送节点作为待更新节点的邻节点。
在一实施方式中,上述邻节点获取模块42包括:
发送节点确定单元,用于针对任一邻节点,获取邻节点的消息数据,确定邻节点的消息数据对应的所有发送节点;
统计单元,用于统计所有发送节点的个数,其中,将所有发送节点中表征为同一个节点的发送节点统计为1。
在一实施方式中,上述权重确定模块43包括:
归一化单元,用于使用Softmax函数对所有邻节点的邻居数量进行归一化,计算得到每个邻节点的归一化值。
需要说明的是,上述模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
图5为本申请实施例五提供的一种计算机设备的结构示意图。如图5所示,该实施例的计算机设备包括:至少一个处理器(图5中仅示出一个)、存储器以及存储在存储器中并可在至少一个处理器上运行的计算机程序,处理器执行计算机程序时实现上述任意各个基于消息传递的图数据更新方法实施例中的步骤。
该计算机设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图5仅仅是计算机设备的举例,并不构成对计算机设备的限定,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括网络接口、显示屏和输入装置等。
所称处理器可以是CPU,该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器包括可读存储介质、内存储器等,其中,内存储器可以是计算机设备的内存,内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。可读存储介质可以是计算机设备的硬盘,在另一些实施例中也可以是计算机设备的外部存储设备,例如,计算机设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,存储器还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,该其他程序如计算机程序的程序代码等。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
本申请实现上述实施例方法中的全部或部分流程,也可以通过一种计算机程序产品来完成,当计算机程序产品在计算机设备上运行时,使得计算机设备执行时实现可实现上述方法实施例中的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种基于消息传递的图数据更新方法,其特征在于,所述图数据更新方法包括:
获取当前时刻物联网拓扑中设备的交互数据,基于所述交互数据对当前的图数据中对应设备的节点的特征进行更新,提取所述图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点;
获取所述待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量;
对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重;
将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新所述待更新节点的节点特征,得到更新的图数据。
2.根据权利要求1所述的图数据更新方法,其特征在于,提取每个邻节点的节点特征包括:
检测每个邻节点的特征状态;
若检测到一邻节点的特征状态为已更新,则确定所述邻节点的当前节点特征为所述邻节点的节点特征。
3.根据权利要求2所述的图数据更新方法,其特征在于,在检测每个邻节点的特征状态之后,还包括:
若检测到所述邻节点的特征状态为未更新,则确定所述邻节点的节点特征为空。
4.根据权利要求1所述的图数据更新方法,其特征在于,获取所述待更新节点的所有邻节点包括:
获取所述待更新节点的消息数据,分析所述待更新节点的消息数据的发送节点;
将所述发送节点作为所述待更新节点的邻节点。
5.根据权利要求1所述的图数据更新方法,其特征在于,提取每个邻节点的邻居数量包括:
针对任一邻节点,获取所述邻节点的消息数据,确定所述邻节点的消息数据对应的所有发送节点;
统计所有发送节点的个数,其中,将所有发送节点中表征为同一个节点的发送节点统计为1。
6.根据权利要求1至5任一项所述的图数据更新方法,其特征在于,对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值包括:
使用Softmax函数对所有邻节点的邻居数量进行归一化,计算得到每个邻节点的归一化值。
7.一种基于消息传递的图数据更新装置,其特征在于,所述图数据更新装置包括:
节点确定模块,用于获取当前时刻物联网拓扑中设备的交互数据,基于所述交互数据对已有图数据中对应设备的节点的特征进行更新,提取所述图数据中所有节点的特征状态,确定特征状态为未更新的节点为待更新节点;
邻节点获取模块,用于获取所述待更新节点的所有邻节点,提取每个邻节点的节点特征和邻居数量;
权重确定模块,用于对所有邻节点的邻居数量进行归一化,计算得到每个邻节点对应的归一化值,确定每个邻节点的归一化值为对应邻节点的权重;
特征更新模块,用于将每个邻节点的节点特征与对应邻节点的权重进行相乘,并对所有相乘的结果进行求和,使用求和结果更新所述待更新节点的节点特征,得到更新的图数据。
8.根据权利要求7所述的图数据更新装置,其特征在于,所述邻节点获取模块包括:
状态检测单元,用于检测每个邻节点的特征状态;
第一特征确定单元,用于若检测到一邻节点的特征状态为已更新,则确定所述邻节点的当前节点特征为所述邻节点的节点特征。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的图数据更新方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的图数据更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211183320.6A CN115510077A (zh) | 2022-09-27 | 2022-09-27 | 基于消息传递的图数据更新方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211183320.6A CN115510077A (zh) | 2022-09-27 | 2022-09-27 | 基于消息传递的图数据更新方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115510077A true CN115510077A (zh) | 2022-12-23 |
Family
ID=84505988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211183320.6A Pending CN115510077A (zh) | 2022-09-27 | 2022-09-27 | 基于消息传递的图数据更新方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115510077A (zh) |
-
2022
- 2022-09-27 CN CN202211183320.6A patent/CN115510077A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112434721A (zh) | 一种基于小样本学习的图像分类方法、系统、存储介质及终端 | |
CN111382868A (zh) | 神经网络结构搜索方法和神经网络结构搜索装置 | |
CN111553215A (zh) | 人员关联方法及其装置、图卷积网络训练方法及其装置 | |
CN114580263A (zh) | 基于知识图谱的信息系统故障预测方法及相关设备 | |
CN113159273B (zh) | 一种神经网络的训练方法及相关设备 | |
CN110490203A (zh) | 图像分割方法及装置、电子设备和计算机可读存储介质 | |
WO2022100607A1 (zh) | 一种神经网络结构确定方法及其装置 | |
CN111652181A (zh) | 目标跟踪方法、装置及电子设备 | |
CN113887615A (zh) | 图像处理方法、装置、设备和介质 | |
CN113705598A (zh) | 数据分类方法、装置及电子设备 | |
CN111738319A (zh) | 一种基于大规模样本的聚类结果评价方法及装置 | |
CN113792876B (zh) | 骨干网络的生成方法、装置、设备以及存储介质 | |
CN115034379A (zh) | 一种因果关系确定方法及相关设备 | |
CN116827685B (zh) | 基于深度强化学习的微服务系统动态防御策略方法 | |
CN113553577A (zh) | 基于超球面变分自动编码器的未知用户恶意行为检测方法及系统 | |
CN111353577B (zh) | 基于多任务的级联组合模型的优化方法、装置及终端设备 | |
CN116049678A (zh) | 特征贡献度评估方法、装置、电子设备和存储介质 | |
CN112906824B (zh) | 车辆聚类方法、系统、设备及存储介质 | |
CN115510077A (zh) | 基于消息传递的图数据更新方法、装置、设备及介质 | |
CN111815442B (zh) | 一种链接预测的方法、装置和电子设备 | |
CN113610856A (zh) | 训练图像分割模型和图像分割的方法和装置 | |
CN111061711A (zh) | 一种基于数据处理行为的大数据流卸载方法和装置 | |
CN115719465B (zh) | 车辆检测方法、装置、设备、存储介质以及程序产品 | |
CN116910682B (zh) | 事件的检测方法及装置、电子设备和存储介质 | |
CN115482422B (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 |