本发明属于人工智能
技术领域:
:,涉及一种知识图谱融合方法,更为具体的说,是涉及一种基于约简锚点的大规模知识图谱融合方法。
背景技术:
:过去十年中,知识图谱在知识表示和建模中起着举足轻重的作用。人们通过艰苦的努力,建立了很多描述通用知识的大规模知识图谱,并将其应用于机器翻译、信息检索和知识推理等应用中。与此同时,很多领域中的研究人员为了整合、归纳和分享领域内的专业知识,也建立了很多领域知识图谱。这些知识图谱的规模正随着人类知识的增长而变得越来越大。近年来,不同领域知识的交叉和基于不同大规模知识图谱的系统间的交互都提出了建立大规模知识图谱间融合的需求。然而,多数融合系统不仅无法在用户可接受的时间内给出满意的融合结果,而且还往往会由于匹配过程申请过大的内存空间而导致系统崩溃。因此,大规模知识图谱融合问题对系统的时间复杂度、空间复杂度和匹配结果质量都提出了严峻考验,成为目前知识图谱融合研究中的一个挑战性难题。在空间复杂度方面,在知识融合过程中,读入大规模知识图谱将占用相当一部分存储空间,随后的预处理、匹配计算和后处理均可能需要申请大量空间才能完成,这些步骤往往导致融合系统无法得到足够的内存空间而崩溃。在时间复杂度方面,知识图谱融合系统的执行时间主要取决于匹配计算过程。为了得到最佳匹配结果,匹配过程需要计算异构实体间的相似度,目前大多数知识融合系统的时间复杂度都是o(n2)(n为实体数目)。在融合结果质量方面,降低融合方法的时间复杂度和空间复杂度的同时有可能造成融合结果质量也降低。很多优秀的融合方法往往比较复杂,如果在处理大规模知识图谱融合时用简化的快速算法来代替,或者为了提高效率设置一些不能发挥算法优势的参数,都可能得不到满意的融合结果。一些算法采用分治的策略,将大规模知识图谱融合问题转换为多个小规模知识图谱融合问题,但分治的过程会将原本中相邻实体分割开,破坏某些实体语义信息的完整性,因此这部分位于边界位置的实体的匹配质量无法得到保证。技术实现要素:为解决上述问题,本发明利用大规模知识图谱中的结构特点和匹配的区域性特点,提出了一种处理大规模知识图谱融合问题的方法。其中包含两种匹配算法:基于正约简锚点的匹配算法和基于负约简锚点的匹配算法。正约简锚点是根据层次结构确定,负约简锚点则根据匹配的区域性特点确定。知识图谱融合过程动态发现这两种约简锚点,并根据约简锚点预测出后继匹配计算中大量无需计算的匹配位置,从而实现高效知识融合。匹配算法中的相似度计算是独立进行的,本发明利用文本匹配器来计算相似度,并提出采用语义上下文快照来近似处理相似度计算中的全局分析问题。为了达到上述目的,本发明提供如下技术方案:一种基于约简锚点的大规模知识图谱融合方法,包括如下步骤:1)大规模知识图谱解析和预处理:对输入的两个大规模知识图谱进行解析,获得后继匹配计算中需要用到的实体、实体层次和其它语义信息;2)约简集构造:a)首先计算两知识图谱实体间的语义描述文档相似度:匹配过程中,高精确度的相似度计算能保证最终的匹配结果质量,对于每对实体的相似度计算,需要考虑其语义上下文,本发明采用社会化网络中的依赖性分析方法,通过判断实体周边三元组与实体的依赖程度,不断将依赖程度最大的三元组加入,直到满足规模要求为止,由此获得实体语义上下文的快照。得到实体的上下文快照后,便可抽取实体在此快照中的上下文子图,并进而构造实体的语义描述文档。相似度计算在相同类型的文档中进行,利用文本向量空间的余弦相似度衡量语义描述文本间的相似度。在语义描述文档的相似度计算中,先将其转化为文档向量,然后计算向量夹角余弦得到。利用语义描述文档的相似度确定实体相似度,并由此得到正锚点和负锚点,并预测后继匹配中的有效约简集。b)其次确定正约简锚点和负约简锚点:如果相似度大于给定阈值ptvalue,则认为当前的实体对是一个正锚点,根据正锚点的特点来构造正约简集,根据正锚点来预测后继匹配计算中可跳过的位置。如果相似度小于给定阈值ntvalue,则认为当前的实体对是一个负锚点,根据负锚点的特点来构造负约简集,根据负锚点预测后继相似度计算中可跳过的位置。c)混合匹配算法:为了得到尽可能大的有效约简集,实际匹配过程可以将上述两种匹配算法进行综合,称这样得到的匹配算法为混合匹配算法。该算法保证在匹配计算中,同时得到正锚点和负锚点及其相应的约简集。约简集还要去除已匹配过的位置和与先前的约简集重复那部分,最后才得到有效约简集。混合预测算法中的匹配顺序采用基于负锚点的预测算法的匹配次序。可跳过匹配位置预测:对于每个需要进行匹配计算的实体对,如果已存在于上述动态构造的约简集中,则可跳过当前的匹配计算。匹配过程直到所有的实体对相似度计算均完成。约简集大小是随匹配计算而动态变化的,最初的约简集较小,然后其集合大小不断增加。为了保证查询新的匹配计算是否已被约简集包含,同时还需要不断去除约简集中已计算的位置。因此约简集的大小达到某个最大值后会逐渐变小,当匹配计算结束的时候,约简集也相应的变为空。3)匹配结果抽取:根据匹配计算得到的两知识图谱的实体相似矩阵,抽取匹配结果。进一步的,构造正约简集时,匹配过程中选择的实体次序可将层次路径不断等分。满足此条件时正锚点生成的有效正约简集最大。构造负约简集时,必须在匹配早期选择邻居较多的实体。实际算法中,这里用度较大的实体近似替代邻居较多的实体。这样能够使匹配过程得到的有效负约简集最大。进一步的,由于负锚点的确定具有传播性,这种传播具有一定的风险,因此需要对负约简集的生成进行如下约束:约束条件1.可传播的负锚点是实体相似度计算中得到的,由邻居传播过来的负锚点不能再次被传播;约束条件2.负锚点能传播的邻居在位于ai的上下文子图内;约束条件3.当实体的语义描述文档包含词条数大于阀值t时,产生的负锚点才能传播。进一步的,由于实际匹配中负约简集比正约简集大得多,因此混合匹配算法在选择实体的匹配次序的时候以基于负锚点的算法为基础,即优先保证产生较大的负约简集,提高匹配的性能,在此过程中,当获得正锚点时,则生成正约简集,从而兼顾了基于正锚点的匹配算法。进一步的,计算相似度过程中,得到实体的快照后,为保证语义的完整性,需要将不被快照包含在内的全部实体相关公理加入快照。此外,为保证文本信息的完整性,还需要将快照中所有实体的声明、定义和注释信息加入。进一步的,匹配结果抽取采用稳定婚姻法或贪婪法,当采用贪婪法时,包括如下过程:将置信矩阵中的置信度进行排序,先根据最大置信度得到一个匹配m1,记录下m1对应的行和列,当取次大的置信度时,如果该置信度位于已得到匹配所处的行列上,则跳过该置信度并转而检查更小的置信度,直到得到min(n,m)个匹配为止。进一步的,步骤1)中,当知识图谱规模大且无法一次读入内存时,分多次读取知识图谱内容并将解析结果存放于数据库中。进一步的,所述相似矩阵采用稀疏矩阵压缩存储方式保存。进一步的,所述约简集在存储时,利用多个链表将约简集的二维表示转化为一维,且合并链表中的连续位置。进一步的,各步骤中对于不再使用的空间立即释放。与现有技术相比,本发明具有如下优点和有益效果:本发明能有效处理实际应用中的大规模知识融合任务,具有良好的效果和性能。本发明提出了一种新型的解决大规模知识图谱融合中时间复杂度的思路,是目前唯一无需划分大规模知识图谱即可完成融合任务的方法。与传统几种有效的大规模知识图谱融合思路相比,无需在匹配过程中对大知识图谱进行划分,从而可以避免大知识图谱划分的失效以及划分过程中造成的语义信息损失,因此匹配过程中可以尽量利用知识图谱中的信息进行匹配,在保证匹配结果的精确度和召回率的同时,具有和划分知识图谱而采用的分治方法同等的匹配效率。现有的大多数匹配器都可以直接应用到本发明的融合框架中,因此本发明通用性强,具有较好的应用前景和推广范围。附图说明图1为本发明提供的基于约简锚点的大规模知识图谱融合方法的逻辑流程图。图2为实体语义上下文快照生成示意图。图3为正约简锚点和负约简锚点示意图。图4为负约简锚点传播风险示意图。具体实施方式以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。本发明提供的基于约简锚点的大规模知识图谱融合方法,如图1所示,包括如下步骤:1)读取和解析大规模知识图谱。将存储在文本文件或数据库文件中的大规模知识图谱进行读取和解析,保证以rdf、owl、json-ld等格式存储的知识图谱被转化为通用的三元组格式,同时根据匹配需要随时获取知识图谱中的具体信息。在匹配过程中频繁被使用的基础数据需要放入内存以便随时访问,主要包括知识图谱实体等。其它非频繁使用的信息,如实体结构信息,要有相应的解析操作保证能快速获取此类信息。2)构造实体的语义上下文快照。语义上下文快照是一个规模不大且能反映实体在局部知识图谱中语义的相关三元组集合。采用社交网络中的依赖性分析方法,通过判断实体周边三元组与实体的依赖程度,不断将依赖程度最大的三元组加入快照,直到快照规模满足要求。给定知识图谱中任意三元组t=<ai,p,aj>,它对应的边有两个权重zij和zji,且zij=1/degree(ai),zji=1/degree(aj),则ai对aj的依赖度wij由zij和zji共同确定。假设要构造a的上下文快照snap(a),则快照中开始只包含点a,每次都选择一条与a依赖度最大的点构成的三元组加入快照,使快照规模不断增加,从而得到关于a的语义上下文快照。得到实体的快照后,为保证语义的完整性,需要将不被快照包含在内的全部实体相关公理加入快照。此外,为保证文本信息的完整性,还需要将快照中所有实体的声明、定义和注释信息加入。上述构造上下文快照的权重确定如图2所给例子所示。3)抽取实体的上下文子图。给定知识图谱o,e是o中的实体,称精确描述e的语义的三元组构成的子图为e的上下文子图gs(e)。这里用一个形象的过程来描述实体s的上下文子图抽取过程:假设关于s的语义信息是可度量的,设为1。s的语义信息由节点s发出,并通过与之关联的三元组传播到其它节点si。由于三元组对语义信息的传播具有一定阻力,使得si得到的关于s的语义信息会有损失。这样的传播过程在知识图谱图中不断进行。s的上下文子图由那些从节点s出发,经过若干次传播后,依然保留较多关于s的语义信息的若干条路径组成。上述过程正好对应一个电路模型:s点发出语义信息的过程相当于在电路中s点加上+1伏的电压;从s出发,经过一条路径到达si点的语义信息相当于通过这条路径到达si的电流;传播中的阻力对应于电路中的电阻。由此上下文子图的抽取可根据实体的语义上下文快照对应的电路模型实现。4)构造实体的语义描述文档。知识图谱实体使用的词汇可能是独立的单词,也可能是多个单词的组合形式,还可能是某些特殊的缩写。实体还可以通过自身注释中的简单语句,对其含义进行补充说明。此外,各种语义描述也可转化为文本形式,如可将实体conferencemember(会议成员)的所有子概念的文本组合起来,共同作为关于它的子概念的描述文本。本发明将知识图谱实体的相关文本按照其对实体语义的描述方式进行组织和划分,并称由此构造出的文本为实体的语义描述文档(semanticdescriptiondocument)。为了避免引入与实体关联不大的其它文本,语义描述文档构造过程被严格限制在实体的上下文子图内,即语义描述文档是基于上下文子图的。此外,语义描述文档不考虑知识图谱语言中的元语,如rdfs:class和owl:hasvalue等。构造过程还包括文本预处理,即进行词干提取和频繁词去除等。5)基于语义描述文档的相似度计算。构造实体和关系的语义描述文档后,便可通过计算语义描述文档相似度来寻找异构知识图谱实体间的匹配。两实体的语义描述文档相似度越高,它们相匹配的可能性越大。描述文档根据知识图谱对实体描述的语义特点被划分为不同的类型,所以相似度计算是在相同类型的文档中进行的。描述文档的表示形式为带权重的词汇集合,即ds={p1*w1,p2*w2,…,px*wx},该描述形式类似于文本向量空间模型,故可利用文本向量空间的余弦相似度衡量语义描述文本间的相似度。令doc={ds1,ds2,…,dsn}为n个同类描述文档的集合,该集合中共含n个不同的词条项t1,t2,…,tn,则每个文档dsi均可表示一个关于这些词条项的n维向量di=(di1,di2,…,din),其中dij表示对应于第j个词条项的权重。统计词条项时,如果两个词的相似度大于阀值δ,则认为它们是相同的词。这里采用编辑距离计算词的相似度。向量di中的权重dij采用tf-idf方法来进行计算。令ni为含有词条ti的文档数目,tf(ti)为ti在di中出现的频率,这里的频率计算考虑的是语义描述文档中词项所带的权重,即tf(ti)=pi。将描述文档转化为向量空间之后,两文档之间的相似度可以用其对应的向量之间的夹角余弦来表示。知识图谱中的实体对间的相似度构成了相似度矩阵。知识图谱中的上下义和part-of等关系具有严格的结构层次,根据匹配不能破坏原知识图谱结构层次的原则,以上下义关系为例,当确定知识图谱o1中的概念a与知识图谱o2中的概念b匹配,则a的子(父)概念不必再与b的父(子)概念做匹配计算,从而能减少很多无谓的相似度计算,由此获得的概念对称之为正约简锚点(简称正锚点)。根据匹配的实体集具有区域性的特点,则实体及其邻居通常只与另一知识图谱中的部分实体相关,而与其它大多数实体都无关,因此,当能确定a与b不匹配时,可认为a的邻居与b也不会匹配,这同样能避免很多无谓的相似度计算,由此确定的实体对称之为负约简锚点(简称负锚点)。因此需要确定确定正约简锚点和负约简锚点。6)基于正锚点的匹配算法。给定o1中实体ai,设它与o2中的实体b1,b2,…,bn的相似度为si1,si2,…,sin,称相似度大于阀值ptvalue的o2中的实体构成的集合为ai对应的正锚点(positiveanchor),即pa(ai)={bj|sij>ptvalue}。正锚点的示意如图3(a)所示。当计算o1中实体ai与o2中全部实体的相似度后,便可以根据ai的正锚点来预测后继匹配计算中可跳过的位置,称这种根据正锚点预测得到的匹配位置为正约简集。显然,正约简集只有在ai的正锚点中的实体集合不为空时才可能得到,正锚点中的实体可能不只一个,为保证正约简集中包含较多正确的可跳过位置,预测时取相似度最大的k个正锚点。正约简集是在相似度计算过程中动态得到的,根据它对后继匹配的影响可将其中的匹配位置分为两部分:(1)匹配位置已在之前已计算过,这类匹配位置对减少后继的相似度计算并无帮助,称为无效正约简集;(2)匹配位置还未被计算过,这类匹配位置可被用于跳过随后的相似度计算,称为有效正约简集。可见,有效正约简集大小才是提高相似度计算效率的因素。在匹配过程中,相似度计算的次序会影响到最终得到的有效正约简集大小,因此有必要讨论如何选择合理的相似度计算次序,以产生最大的有效正约简集。这里为方便讨论,假设知识图谱o1和知识图谱o2相同,即对于o1中的任意实体ai,o2中有且仅有bi与之匹配,也就是pa(ai)={bi}。任选两知识图谱对应的一条长为l的层次路径,对路径上的实体按层次编号为1,2,…,l。如果相似度计算的第1步选择路径两端的实体,即s1=1或s1=l时,产生的有效正约简集大小显然为0。如果第1步选择第k(1<k<l)个实体,得到的有效正约简集大小则为ps=2(k-1)*(l-k)。以此类推可以看出,每次相似度计算选择的实体不同,产生的有效正约简集也可能有差别。因此,匹配顺序决定着能产生多少正约简集。经过严格分析,匹配顺序与最大有效正约简集的关系可由定理1确定。定理1.当匹配过程中选择的实体次序可将层次路径不断等分时,正锚点生成的有效正约简集最大。当两知识图谱完全相等,且知识图谱中所有实体构成一条长度为n且无分支的链状层次结构时,匹配过程可产生n(n-2)大小的有效正约简集,即实际需要做匹配计算的位置个数为:n2-n(n-2)=2n,此时算法时间复杂度最好为o(2n)。然而,这种理想情况在实际知识图谱匹配较少。现实知识图谱中的层次结构往往由多条带分枝的路径构成,假设层次结构从顶实体出发到底层孩子实体(即叶子节点)的路径共有m条,则路径平均长度或者说层次结构平均深度为匹配算法的时间复杂度为该算法实现了相似度计算的合理次序,保证匹配过程产生最大的有效正约简集。7)基于负锚点的匹配算法。给定o1中实体ai,o2中的实体b1,b2,…,bn的相似度为si1,si2,…,sin,称相似度小于阀值ntvalue的o2中的实体构成的集合为ai对应的负锚点(negativeanchor),即na(ai)={bj|sij<ntvalue}。负锚点的示意如图3(b)所示。根据ai的负锚点,同样可以预测后继相似度计算中可跳过的位置,称这种根据负锚点预测得到的匹配位置为负约简集。根据负锚点的定义,ai和它的负锚点具有较低的相似度,即ai很可能与负锚点在语义上无关,因此可进一步推测ai的邻居与ai的负锚点同样不相关,这样ai的邻居在做相似度计算时可跳过ai的负锚点中包含的实体。这里的邻居不限于直接邻居,而包含在实体层次结构中并与ai距离为nscale的实体。对于由此而产生的可跳过的匹配位置的集合,称为负约简集。负约简集计算比较简单。给定ai和它对应的负锚点na(ai),并令与ai距离为nscale的邻居集合为nb(ai)={ax|d(ax-ai)<=nscale},则ai产生的负约简集为得到负约简集同时,ai负锚点也通过负约简集传递给它的邻居。令aj∈nb(ai),且aj的相似度在ai之后计算,当计算aj相似度时,所有(aj,bx)且bx∈na(ai)的位置都被跳过,这部分位置被视为aj的负锚点的一部分,即也就是说ai的负锚点传播给了aj。负锚点的无限制传播将会导致负约简集的可信度降低。在一条长度为l的实体层次路径p=(a1,a2,…,al)上,只要nscale>0,a1的负锚点将最终传播给al。考虑到a1和al距离可能较远,它们的语义关系实际可能并不密切,所以无法保证a1的负锚点中的实体与al也无关。因此,这种无限制传播带来的风险是后继相似度计算会遗漏某些需要计算的位置,从而得到错误匹配结果。图4解释了负锚点传播带来的风险。在无约束的情况下得到的负约简集将越来越不可信。ai和aj对应的负锚点分别为:na(ai)=ns+np,na(aj)=np+nq。na(ai)∩na(aj)=np,即np是二者共有的负锚点。如果aj的相似度计算在ai之后,对aj来说,由于得到了ai的负锚点,计算相似度时将跳过ns,如果正确匹配包含在ns中,则该匹配结果就被遗漏了,所以传播得到的ns对aj的相似度计算是危险的。为减小负锚点传播导致的风险,需要对负约简集的生成进行约束。这里采用的约束条件如下:约束条件1.可传播的负锚点必须是实体相似度计算中得到的,由邻居传播过来的负锚点不能再次被传播。约束条件2.负锚点能传播的邻居必须在位于ai的上下文子图内,称之为ssg约束。约束条件3.当实体的语义描述文档包含词条数大于阀值t时,产生的负锚点才能传播,称之为sdd约束。与正约简集生成时类似,实体相似度计算次序也将影响负约简集大小。对于包含n个实体的知识图谱,实体匹配顺序有n!种可能,为了在匹配过程中得到最大负约简集,需列举全部n!种可能的匹配顺序,这样的代价显然太大。通过推理证明,本发明指出为了匹配过程得到的有效负约简集最大,必须在匹配早期选择邻居较多的实体。实际算法中,这里用度较大的实体近似替代邻居较多的实体。该算法采用贪心思想,可保证匹配过程高效生成接近最大有效负约简集的结果。假设实体的邻居数目平均为w,每个实体平均能产生的负锚点大小p,且p通常与实体总数n成正比:p=λn(0≤λ≤1),匹配算法的时间复杂度为o((1-wλ)n2)。显然,影响算法效率的主要因数是w和λ,邻居平均数目w越大,算法越快;λ越大,即负锚点平均大小p越大,算法也越快。w的大小除与知识图谱结构特征有关外,还受3个约束条件的影响。决定λ大小的参数主要是确定负锚点时选择的阀值ntvalue。8)混合匹配算法。为了得到尽可能大的有效约简集,匹配过程可以将上述两种匹配预测算法进行综合,称这样得到的匹配算法为混合(hybrid)匹配算法。两种预测算法的预测效果均与实体匹配次序相关,混合匹配算法保证在匹配计算中,同时得到正锚点和负锚点及其相应的约简集。混合预测算法中的匹配顺序采用基于负锚点的预测算法的匹配次序。这样处理的原因有两点:(1)由于基于正锚点预测的匹配算法取得较好效果时的条件过于苛刻,即要求知识图谱实体层次平均深度要尽量大,而大量对知识图谱结构的统计表明,大规模知识图谱中的层次平均深度一般较短,算法难以发挥其优势;(2)基于负锚点预测的匹配算法优先计算度大的点,除少数上层节点外,这样的点大多往往位于层次路径的中部,因此对基于正锚点预测的匹配算法也有益处。混合预测算法中,首先计算ai相似度时分别得到正锚点pa(ai)和负锚点na(ai),然后,由此得到当前正约简集ps(ai)和负约简集ns(ai),最后,约简集还要去除已匹配过的位置和与先前的约简集重复那部分,才得到有效约简集。混合匹配算法以上两种基于锚点的匹配算法为基础。9)匹配结果抽取。在相似度矩阵中,每个实体均可能有多个不同的候选匹配对象。本发明只考虑1:1的等价匹配,即认为知识图谱o1中的每个实体只能与知识图谱o2中的一个实体对应。当相似矩阵m中的m(x,y)的值对于x行和y列来说均是最大值时,则可以认为该位置对应的实体对ex和ey是一个合理的匹配。然而,这样的相似度分布是理想的情况,实际的匹配结果所对应的置信度可能在相应的列和行上均不是最大的。因此,从置信矩阵中抽取出合理的匹配结果是一个重要的问题。本发明给出了解决匹配结果抽取的两种方法:稳定婚姻(stablemarriage)法和贪婪法。稳定婚姻算法是一种经典的算法,这里不再论述。贪婪法则将置信矩阵中的置信度进行排序,先根据最大置信度得到一个匹配m1,记录下m1对应的行和列,当取次大的置信度时,如果该置信度位于已得到匹配所处的行列上,则跳过该置信度并转而检查更小的置信度,上述步骤直到得到min(n,m)个匹配为止。设矩阵共为n×n维,则置信度排序的复杂度为o(nln(n)),在最坏的情况下,得到全部匹配需要遍历全部n2个置信度,因此该算法的复杂度为o(n2)。贪婪算法得到的匹配结果也是稳定的,它其实可看作稳定婚姻法的一种特殊情况。实际使用中,由于相似度矩阵是一个很多位置上为0的稀疏矩阵,并且抽取得到的匹配应满足阀值限制,因此不需要遍历那些小于阀值的置信度,所以贪婪法在实际使用中的效率比稳定婚姻法高。本发明中还涉及很多对空间复杂度的处理,都能够改善整体效率,主要包括以下几个方面:(1)大知识图谱存储:匹配系统需要读入并解析待匹配的两个知识图谱。如果知识图谱规模大到无法一次读入内存,就得考虑其它处理方法,例如可以分多次读取知识图谱内容并将解析结果存放于数据库中。(2)稀疏相似矩阵压缩:大规模知识图谱中包含的实体数目n很大,因此不能为匹配过程分配n2大小的相似矩阵。考虑到实际匹配过程中的相似矩阵是一个典型的稀疏矩阵,因此可采用稀疏矩阵压缩存储方式保存相似矩阵,即只记录大于阀值的相似度。稀疏矩阵的压缩存储方法很多。本文使用三元组压缩存储方法,即用(i,j,v)表示i行j列存在大于阀值的相似度v。为方便稀疏相似矩阵的检索、插入和遍历等操作,数据结构并非三元组,而是三个线性表lr、lc和lv,它们的第k个位置分别第k个三元组记录的行、列和相似度值,即lr(k)=i,lc(k)=j,lv(k)=v。相似矩阵采用这种存储方式不但大大节省了存储空间,而且操作效率也很好。在本发明实践中,采用这种压缩存储的相似矩阵所占内存一般在几兆内。(3)约简集的存储:在基于锚点的匹配算法中,随着匹配进行,产生的约简集越来越大。约简集由记录实体位置的二元组构成,大量的这种二元组也会占用较大的空间。本文从两个方面解决约简集的存储问题,即利用多个链表将约简集的二维表示转化为一维以及合并链表中的连续位置。(4)无用空间及时释放原则:大规模知识图谱匹配中的空间资源宝贵,因此对于不再使用的空间要及时释放,尽量为后继处理清理出较大空间,以减少出现内存不足的严重错误的几率。在本发明实践中,匹配过程中所用到的上下文子图、语义描述文档和约简集等信息,都在使用完立即释放。这种原则可降低匹配系统占用空间的最大峰值。本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。应当指出,对于本
技术领域:
:的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。当前第1页12当前第1页12