同构图识别方法、装置、设备和介质制造方法及图纸

技术编号:28037600 阅读:77 留言:0更新日期:2021-04-09 23:20
本发明专利技术实施例提供了一种同构图识别方法、装置、设备和介质。该方法包括:接收目标图和模式图,目标图和模式图中均包括节点和连接节点的边;基于目标图中节点的标签和模式图中节点的标签,筛选目标图中的节点,由筛选出的目标图中的节点得到目标图的子图;在目标图的子图中搜索模式图,得到模式图的同构图。本发明专利技术实施例提高了从目标图中识别模式图的同构图的效率,降低了从目标图中识别模式图的同构图的时间复杂度和耗时。

【技术实现步骤摘要】
同构图识别方法、装置、设备和介质
本专利技术涉及图像识别
,具体涉及一种同构图识别方法、装置、设备和介质。
技术介绍
相关技术中,随着计算机与信息技术的不断发展,出现了越来越多用图表达的数据。在生物信息学、社交网络和集成电路等领域中都需要使用同构图识别技术从大量的目标图中识别出与模式图同构匹配的同构图。由于目标图中需要匹配的节点数量巨大,这降低了从目标图中识别模式图的同构图的效率,从而增加了从目标图中识别模式图的同构图的时间复杂度和耗时。
技术实现思路
鉴于上述问题,本专利技术的目的在于提供一种同构图识别方法、装置、设备和介质,提高了从目标图中识别模式图的同构图的效率,降低了从目标图中识别模式图的同构图的时间复杂度和耗时。根据本专利技术实施例的第一方面,提供一种同构图识别方法,包括:接收目标图和模式图,所述目标图和所述模式图中均包括节点和连接节点的边;基于所述目标图中节点的标签和所述模式图中节点的标签,筛选所述目标图中的节点,由筛选出的所述目标图中的节点得到所述目标图的子图;在所述目标图的子图中搜索所述模式图,得到所述模式图的同构图。可选地,接收目标图和模式图之后,所述方法还包括:获取所述模式图和所述目标图中节点的标签。可选地,所述获取所述模式图和所述目标图中节点的标签包括:获取所述节点的节点字符串;获取所述节点的节点类型字符串;将所述节点的节点字符串和节点类型字符串串联,得到所述节点的标签。可选地,所述获取所述模式图和所述目标图中节点的标签包括:第一处理,用于获取所述节点的节点字符串;第二处理,用于将所述节点的节点字符串作为所述节点的节点类型字符串,执行所述第一处理,更新所述节点的节点字符串;重复执行所述第二处理,将更新后的所述节点的节点字符串作为所述节点的标签。可选地,所述节点包括一个或多个端点,所述一个或多个端点中的至少一部分端点通过边连接到邻居节点,所述获取所述节点的节点字符串包括:获取所述节点的端点的端点字符串;将所述节点的各端点的端点字符串串联成所述节点的节点字符串。可选地,所述获取所述节点的端点的端点字符串,包括:基于与所述端点连接的邻居节点,确定所述端点的端点字符串。可选地,所述基于与所述端点连接的邻居节点,确定所述端点的端点字符串,包括:如果所述邻居节点中包括第一类型的节点,则基于所述第一类型确定所述端点的端点字符串;如果不包括,则获取所述邻居节点的邻居节点字符串,所述第一类型的节点是端点连接外部输入信号或外部输出信号的节点;将所述邻居节点的邻居节点字符串串联,得到所述端点字符串。可选地,所述获取所述邻居节点的邻居节点字符串包括:如果所述邻居节点中包括属于第二类型的节点,则基于所述端点的端点类型和所述第二类型得到所述邻居节点字符串,所述第二类型的节点是仅有输入端点或仅有输出端点的节点;如果不包括,则获取所述端点与所述邻居节点之间的边的边字符串;将所述边字符串串联成所述邻居节点字符串。可选地,所述获取所述端点与所述邻居节点之间的边的边字符串包括:将所述端点的端点类型字符串、所述边所连接的所述邻居节点的端点类型字符串和所述邻居节点的节点类型字符串串联,得到所述边字符串。可选地,所述基于所述目标图中节点的标签和所述模式图中节点的标签,筛选所述目标图中的节点,由筛选出的所述目标图中的节点得到所述目标图的子图包括:比较所述目标图中节点的标签与标签集合,由所述目标图中标签包含在所述标签集合中的至少一部分节点得到所述目标图的子图,所述标签集合是所述模式图中节点的标签的集合。可选地,比较所述目标图中节点的标签与标签集合,由所述目标图中标签包含在所述标签集合中的至少一部分节点得到所述目标图的子图包括:第三处理,用于从所述目标图中取出一个未比较过的节点,将所述当前取出的节点的标签与所述标签集合进行比较;第四处理,用于如果所述标签集合中包括所述当前取出的节点的标签,则将所述当前取出的节点放入子图节点集合,将所述目标图中所述当前取出的节点的未比较过的邻居节点的标签与所述标签集合进行比较;如果所述标签集合包括所述当前取出的节点的未比较过的邻居节点的标签,则从所述目标图中取出所述邻居节点,将所述邻居节点的标签与所述标签集合进行比较,并重复所述第四处理,直到所述目标图中没有未比较的且标签包括在所述标签集合中的且与所述当前取出的节点位于同一连通图的节点;如果所述子图节点集合中包括所述标签集合的节点,则由所述子图节点集合得到所述目标图的子图;如果不包括,则清空所述子图节点集合,重复所述第三处理,直到所述目标图中没有未比较过的节点。可选地,所述第四处理包括:第五处理,用于如果所述标签集合中包括所述当前取出的节点的标签,则将所述当前取出的节点放入子图节点集合,判定所述目标图中所述当前取出的节点的未比较过的邻居节点是否与第二类型的节点连接至所述当前取出的节点的同一端点;第六处理,用于如果否,则从所述目标图中取出所述邻居节点,将所述目标图中所述当前取出的节点的未比较过的邻居节点的标签与所述标签集合进行比较;如果是,则重复执行所述第五处理,直到所述目标图中所述当前取出的节点没有未比较过的邻居节点。根据本专利技术实施例的第二方面,提供一种同构图识别装置,包括:图接收单元,用于接收目标图和模式图,所述目标图和所述模式图中均包括节点和连接节点的边;子图建立单元,用于基于所述目标图中节点的标签和所述模式图中节点的标签,筛选所述目标图中的节点,由筛选出的所述目标图中的节点得到所述目标图的子图;同构匹配单元,用于在所述目标图的子图中搜索所述模式图,得到所述模式图的同构图。根据本专利技术实施例的第三方面,提供一种同构图识别设备,包括:存储器,用于存储计算机可读指令;处理器,用于执行存储中存储的计算机可读指令,以执行上述方法。根据本专利技术实施例的第四方面,提供一种计算机可读介质,其中,所述计算机可读介质存储有可由终端设备执行的计算机指令,所述计算机指令被执行时,实现上述方法。根据本专利技术实施例提供的同构图识别方法、装置、设备和介质,基于目标图中节点的标签和模式图中节点的标签,筛选目标图中的节点,由筛选出的目标图中的节点得到目标图的子图,在目标图的子图中搜索模式图,得到模式图的同构图。这样,在目标图的子图和模式图同构匹配之前,就从目标图中滤掉大量在同构匹配中不可能与模式图中节点同构匹配的节点,得到目标图的子图。由于模式图中的节点要与目标图中的所有节点进行同构匹配,目标图中的节点的数量越少,模式图和目标图同构匹配的速度越高,从而提高了从目标图中识别模式图的同构图的效率,降低了从目标图中识别模式图的同构图的时间复杂度和耗时。获取节点的节点类型字符串。如果所述节点的端点的邻居节点中包括第一类型的节点,则本文档来自技高网...

【技术保护点】
1.一种同构图识别方法,包括:/n接收目标图和模式图,所述目标图和所述模式图中均包括节点和连接节点的边;/n基于所述目标图中节点的标签和所述模式图中节点的标签,筛选所述目标图中的节点,由筛选出的所述目标图中的节点得到所述目标图的子图;/n在所述目标图的子图中搜索所述模式图,得到所述模式图的同构图。/n

【技术特征摘要】
1.一种同构图识别方法,包括:
接收目标图和模式图,所述目标图和所述模式图中均包括节点和连接节点的边;
基于所述目标图中节点的标签和所述模式图中节点的标签,筛选所述目标图中的节点,由筛选出的所述目标图中的节点得到所述目标图的子图;
在所述目标图的子图中搜索所述模式图,得到所述模式图的同构图。


2.根据权利要求1所述的方法,其中,接收目标图和模式图之后,所述方法还包括:
获取所述模式图和所述目标图中节点的标签。


3.根据权利要求2所述的方法,其中,所述获取所述模式图和所述目标图中节点的标签包括:
获取所述节点的节点字符串;
获取所述节点的节点类型字符串;
将所述节点的节点字符串和节点类型字符串串联,得到所述节点的标签。


4.根据权利要求2所述的方法,其中,所述获取所述模式图和所述目标图中节点的标签包括:
第一处理,用于获取所述节点的节点字符串;
第二处理,用于将所述节点的节点字符串作为所述节点的节点类型字符串,执行所述第一处理,更新所述节点的节点字符串;
重复执行所述第二处理,将更新后的所述节点的节点字符串作为所述节点的标签。


5.根据权利要求3或4所述的方法,其中,所述节点包括一个或多个端点,所述一个或多个端点中的至少一部分端点通过边连接到邻居节点,所述获取所述节点的节点字符串包括:
获取所述节点的端点的端点字符串;
将所述节点的各端点的端点字符串串联成所述节点的节点字符串。


6.根据权利要求5所述的方法,其中,所述获取所述节点的端点的端点字符串,包括:
基于与所述端点连接的邻居节点,确定所述端点的端点字符串。


7.根据权利要求6所述的方法,其中,所述基于与所述端点连接的邻居节点,确定所述端点的端点字符串,包括:
如果所述邻居节点中包括第一类型的节点,则基于所述第一类型确定所述端点的端点字符串;如果不包括,则获取所述邻居节点的邻居节点字符串,所述第一类型的节点是端点连接外部输入信号或外部输出信号的节点;
将所述邻居节点的邻居节点字符串串联,得到所述端点字符串。


8.根据权利要求7所述的方法,其中,所述获取所述邻居节点的邻居节点字符串包括:
如果所述邻居节点中包括属于第二类型的节点,则基于所述端点的端点类型和所述第二类型得到所述邻居节点字符串,所述第二类型的节点是仅有输入端点或仅有输出端点的节点;
如果不包括,则获取所述端点与所述邻居节点之间的边的边字符串;
将所述边字符串串联成所述邻居节点字符串。


9.根据权利要求8所述的方法,其中,所述获取所述端点与所述邻居节点之间的边的边字符串包括:
将所述端点的端点类型字符串、所述边所连接的所述邻居节点的端点类型字符串和所述邻居节点的节点类型字符串串联,得到所述边字符串。


10.根...

【专利技术属性】
技术研发人员:王光晨李桢荣
申请(专利权)人:北京华大九天软件有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1