本技术涉及计算机,尤其是涉及到一种json格式数据的相似度计算方法及装置、存储介质、计算机设备。
背景技术:
1、json是一种常见的半结构化数据格式,目前已广泛应用于文档存储、网络数据传输等场景。随着json格式数据的日渐增长,很多数据库中存储了大量的json格式数据。当前很多场景下需要计算json格式数据间的相似度,例如,存储系统为了避免数据库中存在重复的json格式数据,通常会在存储新的json格式数据前,先在数据库中查询是否已经存在相同的json格式数据,此时需要计算json格式数据之间的相似度,从而快速有效地识别和删除重复的json格式数据;又例如,用户在查询与目标文档相似的其它文档时,目标文档以及待匹配的文档均是以json格式存储的,此时需要在较大规模的json格式数据集中,根据相似度度量来过滤和排序搜索结果,从而找到理想的匹配文档。在这些场景下,准确高效地计算json格式数据间的相似度具有重要意义。
2、json格式数据的结构形式多样,例如嵌套结构形式、扁平结构形式等,因此计算json格式数据之间的相似度时挑战较大。目前已有传统算法基于树编辑距离对json格式数据间的结构差异计算提出了可靠方法,此方法提出了json树及json编辑距离的概念,可以更加准确的计算json格式数据间的结构差异,但其问题在于比较时仅考虑json树的节点字面量的差异。因此,现有方法在进行json格式数据之间的相似度计算时,准确率较低。此外,在面对大规模数据处理和复杂信息比对的挑战时,传统算法变得耗时且受限,可能需要较长的计算时间,这直接影响了json格式数据的相似度计算效率,不能保证用户的使用体验。
技术实现思路
1、有鉴于此,本技术提供了一种json格式数据的相似度计算方法及装置、存储介质、计算机设备,通过相似度计算模型计算json格式数据之间的相似度,由于神经网络模型可以迅速从json格式数据转化得到的图结构中提取节点级特征和图级特征,因此本技术可以在短时间内处理大规模json格式数据之间的相似度计算,大大提升了相似度计算效率,有助于提升用户体验。此外,相似度计算模型在进行相似度计算时,同时考虑了节点级特征和图级特征,实现了对json格式数据在多个层次上的相似度比较,可以大幅提升json格式数据的相似度计算准确率。且相似度计算模型在接收到json格式数据之后,首先将json格式数据转换为图结构形式,之后再进行相似度计算,因此能够适应不同类型和结构的json数据,泛化能力的增强使得相似度计算模型更具有实用性和适应性。
2、根据本技术的一个方面,提供了一种json格式数据的相似度计算方法,包括:
3、获取待进行相似度计算的第一json格式数据和第二json格式数据;
4、通过相似度计算模型,分别将第一json格式数据和第二json格式数据转化为图结构,得到第一图结构和第二图结构;对于所述第一图结构和所述第二图结构中的每个图结构,根据所述图结构中每个节点对应的语义特征向量,计算每个节点相对于所述图结构的第一权重,以及相对于另一个图结构的第二权重,根据所述第一权重以及所述第二权重,计算每个节点对应的最终权重,根据各节点对应的语义特征向量以及最终权重,确定所述图结构对应的图向量,得到所述第一图结构对应的第一图向量和所述第二图结构对应的第二图向量;根据所述第一图向量和第二图向量,通过预训练好的神经张量网络,计算所述第一json格式数据和所述第二json格式数据之间的图级比较结果向量;根据所述第一图结构和所述第二图结构中每个节点对应的语义特征向量,计算所述第一json格式数据和所述第二json格式数据之间对应的节点级比较结果向量;将所述图级比较结果向量以及所述节点级比较结果向量进行拼接处理,根据拼接处理结果计算所述第一json格式数据和所述第二json格式数据之间的最终相似度。
5、根据本技术的另一方面,提供了一种json格式数据的相似度计算装置,包括:
6、数据获取模块,用于获取待进行相似度计算的第一json格式数据和第二json格式数据;
7、相似度计算模块,用于通过相似度计算模型,分别将第一json格式数据和第二json格式数据转化为图结构,得到第一图结构和第二图结构;对于所述第一图结构和所述第二图结构中的每个图结构,根据所述图结构中每个节点对应的语义特征向量,计算每个节点相对于所述图结构的第一权重,以及相对于另一个图结构的第二权重,根据所述第一权重以及所述第二权重,计算每个节点对应的最终权重,根据各节点对应的语义特征向量以及最终权重,确定所述图结构对应的图向量,得到所述第一图结构对应的第一图向量和所述第二图结构对应的第二图向量;根据所述第一图向量和第二图向量,通过预训练好的神经张量网络,计算所述第一json格式数据和所述第二json格式数据之间的图级比较结果向量;根据所述第一图结构和所述第二图结构中每个节点对应的语义特征向量,计算所述第一json格式数据和所述第二json格式数据之间对应的节点级比较结果向量;将所述图级比较结果向量以及所述节点级比较结果向量进行拼接处理,根据拼接处理结果计算所述第一json格式数据和所述第二json格式数据之间的最终相似度。
8、依据本技术又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述json格式数据的相似度计算方法。
9、依据本技术再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述json格式数据的相似度计算方法。
10、借由上述技术方案,本技术提供的一种json格式数据的相似度计算方法及装置、存储介质、计算机设备,首先,选择要进行相似度计算的两条json格式数据,分别为第一json格式数据和第二json格式数据。之后,可以利用预训练好的相似度计算模型,将第一json格式数据以及第二json数据输入到相似度计算模型中,通过相似度计算模型将第一json格式数据和第二json格式数据分别转化为图结构,进而可以得到与第一json格式数据对应的第一图结构,以及与第二json格式数据对应的第二图结构。进一步,可以将转换后的图结构以向量形式表示,即可得到第一图结构对应的第一图向量,以及第二图结构对应的第二图向量。接着,通过比较两个图向量,可以得到一个表示两者在图级别上相似度的向量,称作图级比较结果向量。此外,还可以将每个节点赋予一个语义特征向量,根据两个图结构中节点之间语义特征向量的比较,得到节点级比较结果向量。最后,将图级比较结果向量和节点级比较结果向量进行拼接处理,得到一个拼接向量,根据得到的拼接向量,来计算两个json格式数据之间的最终相似度。本技术实施例通过相似度计算模型计算json格式数据之间的相似度,由于神经网络模型可以迅速从json格式数据转化得到的图结构中提取节点级特征和图级特征,因此本技术可以在短时间内处理大规模json格式数据之间的相似度计算,大大提升了相似度计算效率,有助于提升用户体验。此外,相似度计算模型在进行相似度计算时,同时考虑了节点级特征和图级特征,实现了对json格式数据在多个层次上的相似度比较,可以大幅提升json格式数据的相似度计算准确率。且相似度计算模型在接收到json格式数据之后,首先将json格式数据转换为图结构形式,之后再进行相似度计算,因此能够适应不同类型和结构的json数据,泛化能力的增强使得相似度计算模型更具有实用性和适应性。
11、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
1.一种json格式数据的相似度计算方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述图结构中每个节点对应的语义特征向量,计算每个节点相对于所述图结构的第一权重,以及相对于另一个图结构的第二权重,根据所述第一权重以及所述第二权重,计算每个节点对应的最终权重,根据各节点对应的语义特征向量以及最终权重,确定所述图结构对应的图向量,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一图结构和所述第二图结构中每个节点对应的语义特征向量,计算所述第一json格式数据和所述第二json格式数据之间对应的节点级比较结果向量,包括:
4.根据权利要求1所述的方法,其特征在于,所述获取待进行相似度计算的第一json格式数据和第二json格式数据之前,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述根据两条json格式样本数据对应的第一样本数据,计算每组训练样本数据对应的语义编辑距离相似度,包括:
6.根据权利要求4所述的方法,其特征在于,所述根据所述两条json格式样本数据对应的第二样本数据,计算每组训练样本数据对应的语义文本相似度,包括:
7.一种json格式数据的相似度计算装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述相似度计算模块,用于:
9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
10.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法。
