知识图谱标签松散场景下地理信息索引结构及检索方法与流程

文档序号:23629222发布日期:2021-01-12 10:43阅读:173来源:国知局
知识图谱标签松散场景下地理信息索引结构及检索方法与流程

本发明涉及计算机科学技术领域,尤其是一种知识图谱标签松散场景下地理信息索引结构及对应检索方法。



背景技术:

国际标准化组织w3c提出了针对rdf知识图谱的标准化查询语言sparql。作为一种图数据,sparql查询的执行可以通过图匹配的方式实现。然而图匹配的计算复杂度较高,关于查询的执行和实现,核心问题是在保证接口正确性的同时,如何有效地提高时间效率和空间效率;针对这些核心问题,合理的模型和算法的设计,对于知识图谱的高效查询来说,是必不可少的。

针对时空数据和文本关键词的查询,目前已经取得了较好的进展,如ir-tree,br-tree等;它们的主要思想都是在空间索引中维护其他额外的关键信息(如文本关键词信息等),以此在基于空间索引的空间剪枝的能力的基础上,增加额外的剪枝能力(如文本剪枝能力),最终有效地提高查询的效率;但是,正是由于在空间索引中维护了额外的信息,所以为了维护这些额外的信息而导致的空间上的开销,也是需要考虑和权衡的。除此之外,由于在知识图谱中数据是以节点(图数据)的形式存在,其时空信息和文件关键词信息是以节点的属性或独立的节点的形式存在,所以对于如何厘清不同粒度的空间实体和文本等非空间实体的逻辑关联关系、如何有效地利用地理关联技术去关联知识图谱中实体的语义信息和空间信息、如何有效地将时空数据和文本关键词的查询相关的高效算法应用于知识图谱中等等难点,仍具有一定的思考和研究的空间。

基础地理信息数据具有空间载体和知识库两大功能。过去人们主要关注其空间载体的作用,开发并提供各种基础地理数据服务和信息服务,但对其知识存量的挖掘不够,提供的地理空间知识服务很少。近年来,“海量数据、信息爆炸、知识难求”的现象越来越突出,以在知识图谱中对地理信息进行额外的处理以获得更好的知识服务为起点,将地理数据信息服务向知识服务转型是大势所趋。如果能够在知识图谱中以结构化的方式描述伴随着地理空间信息的高维度数据及其间的关系并实现高效的查询,则对于在认知计算、知识表示与推理、信息检索与抽取、数据挖掘与机器学习等大数据技术对地理信息进行处理与分析以及地理信息知识服务方面将会大有裨益。由此,知识图谱中地理信息的存储与高效查询的实现,对于地理信息的分析与应用来说,具有重要的研究和实用价值。

此外,从流行病防治的需求出发,可以结合图数据与时空数据等大数据管理技术,利用知识图谱全面刻画疫情中涉及的医疗、社会、人群等复杂信息,用轨迹数据刻画用户随时间变化的位置信息,并建立时空数据与知识图谱中文本数据的关联,进而构建融合知识图谱和时空数据的新颖有效的存储、处理和分析技术,实现疫情的全方位、细粒度、多视角的监控,并为现有的人工管理和直报系统提供有力补充。



技术实现要素:

本发明的目的是提供一种知识图谱标签松散场景下地理信息索引结构及检索方法,该地理信息索引结构在存储地理信息的同时额外存储了知识图谱中每一个地理节点所关联的标签的集合,其对应的检索方法可以利用索引结构中存储的标签集合信息直接查询出所有与对应地理节点所关联的标签并检测出这些标签是否满足检索需求,从而提前规避对不满足检索需求的地理节点的检索,减小了无效检索的范围。

实现本发明目的的具体技术方案是:

一种知识图谱标签松散场景下地理信息索引结构,特点是所述索引结构为lr树;所述lr树以r树为基础,在存储空间信息的同时,再存储每个节点的可达标签集合,以增强检索时剪枝效力;

其中可达标签集合具体为:

设s是知识图谱g中所有地理节点的集合,ns是知识图谱中所有ns-dfs遍历树的集合,lu是知识图谱g中的标签全集,l(t)表示ns-dfs遍历树t中所有节点标签的集合并有集合l={l(t)|t∈ns},由ns-dfs遍历树的定义可知,每一个地理节点唯一对应一棵ns-dfs遍历树,即

由于每一棵ns-dfs遍历树的节点数量是有限且确定的,每一个节点所关联的标签也是有限且确定的,那么根据一棵ns-dfs遍历树计算出唯一的节点标签集合,即

那么对于即存在满射

即对于任意一个在知识图谱g中的地理节点s,总能够找到一个标签集合ψ(s)与其对应,将标签集合ψ(s)称为地理节点s的可达标签集合;

基于所述的可达标签集合:

lr树中的每一个叶节点存储的信息:1)地理节点s的节点信息;2)该地理节点的可达标签集合ψ(s);

lr树中的每一个非叶节点存储的信息:1)其子节点的最小外接矩形;2)其子节点的可达标签集合的并集;

即对于lr树中的每一个节点r,都维护着该节点的可达标签集合l(r),且有:

其中表示lr树的节点r维护地理节点s的信息,表示lr树节点r是lr树节点r的子节点;

所述ns-dfs:若在知识图谱g中以地理节点为起点进行深度优先搜索dfs的过程中,除了作为起点的地理节点外,只对非地理节点进行递归搜索,则称该深度优先搜索为ns-dfs;

所述ns-dfs遍历树:对地理节点s进行一次ns-dfs遍历所得到的遍历树称为地理节点s的ns-dfs遍历树。

一种利用所述索引结构进行检索的方法,特点是该方法包括以下具体步骤:

步骤1:根据查询条件得到该查询所限定的标签集合l(q);

步骤2:从根节点开始,对索引结构即lr树每一个节点进行检索;在对lr树的节点r进行检索时,需满足:1)节点r满足空间谓词;2)否则,直接对lr树节点r的子树进行剪枝;在检索到叶节点时,若该叶节点仍然满足上述的两个条件,则将该叶节点加入候选集sq;

步骤3:对于候选集sq中的每一个元素s,对其ns-dfs遍历树进行常规的导航式查询,将满足条件的结果加入结果集;若候选集sq中的每一个元素都已搜索完毕,则返回结果集。

本发明的有益效果:本发明对知识图谱中的地理信息进行了有结构性地组织,提出了基于r树的地理信息索引结构,同时本发明提出的检索方法通过利用该地理信息索引结构在存储地理信息的同时额外存储的知识图谱中每一个地理节点所关联的标签的集合,直接查询出所有与对应地理节点所关联的标签并检测出这些标签是否满足检索需求,从而提前规避对不满足检索需求的地理节点的检索,减小了无效检索的范围。本发明提出的地理信息索引结构及对应检索方法在知识图谱标签松散场景下可以表现出非常良好的检索效率。

附图说明

图1为一张含地理信息节点的知识图谱的示例图;

图2为本发明提出的ns-dfs遍历树示例图;

图3为本发明提出的知识图谱中地理节点与nfs-dfs遍历树、nfs-dfs遍历树与可达标签集合的映射关系示例图;

图4为使用a数据集时的实验结果统计柱状图;

图5为使用b数据集时的实验结果统计柱状图;

图6为本发明提出的lr树示例图。

具体实施方式

如果在对知识图谱g中以地理节点为起点进行深度优先搜索(dfs)的过程中,只对非地理节点进行搜索(作为起点的地理节点除外),则称该深度优先搜索为ns-dfs。

定义ns-dfs遍历树;对地理节点s进行一次ns-dfs遍历所得到的遍历树称为地理节点s的ns-dfs遍历树。

由ns-dfs遍历树的定义可知,ns-dfs遍历树中有且仅有一个地理节点,且该地理节点为根节点。

设s是知识图谱g中所有地理节点的集合,ns是知识图谱中所有ns-dfs遍历树的集合,lu知识图谱g中的标签全集,l(t)表示ns-dfs遍历树t中所有节点标签的集合(t∈ns,),并有集合l={l(t)|t∈ns},由ns-dfs遍历树的定义可知,每一个地理节点唯一对应一棵ns-dfs遍历树,即

由于每一棵ns-dfs遍历树的节点数量是有限且确定的,每一个节点所关联的标签也是有限且确定的,那么就可以根据一棵ns-dfs遍历树计算出唯一的节点标签集合,即

那么对于即存在满射

即对于任意一个在知识图谱g中的地理节点s,总能够找到一个标签集合ψ(s)与其对应。本发明将标签集合ψ(s)称为地理节点s的可达标签集合;

针对以上信息,本发明构造了一种包含用于空间剪枝的空间部分和用于标签剪枝的标签部分等两个部分的新型索引结构:lr树;lr树以r树为基础,在维护空间信息的同时,额外再维护每个节点的可达标签集合,以达到增强检索时剪枝效力的目的。

对于lr树中的每一个叶节点,lr树维护两个部分的信息:1)地理节点s的节点信息;2)该地理节点的可达标签集合ψ(s)。

对于lr树中的每一个非叶节点,lr树维护两部分的信息:1)其子节点的最小外接矩形(mbr);2)其子节点的可达标签集合的并集。

即对于lr树中的每一个节点r,都维护着该节点的可达标签集合l(r),且有:

其中表示lr树的节点r维护地理节点s的信息,表示lr树节点r是lr树节点r的子节点。

在利用lr树进行带空间谓词的图导航查询时,可分为三个步骤:

(1)根据查询条件得到该查询所限定的标签集合l(q);

(2)从根节点开始,对lr树每一个节点进行检索;在对lr树的节点r进行检索时,需满足:1)节点r满足空间谓词;2)否则,可直接对lr树节点r的子树进行剪枝。在检索到叶节点时,若该叶节点仍然满足上述的两个条件,则将该叶节点加入候选集sq。

(3)对于候选集sq中的每一个元素s,对其ns-dfs遍历树进行常规的导航式查询(若是可达性查询,可直接根据l(s)给出答案),将满足条件的结果加入结果集;若候选集sq中的每一个元素都已搜索完毕,则返回结果集。

实施例

图1为含地理信息节点的知识图谱的示例图,图中深色节点为地理节点,浅色节点为非地理节点,地理节点与地理节点、地理节点与非地理节点之间使用虚线(表示空间关系)进行连接,非地理节点与非地理节点之间使用实线(表示非空间关系)进行连接。对图1中的s1、s4、s11地理节点进行一次ns-dfs遍历所得到的ns-dfs遍历树可分别参阅图2中a、b、c。图1中地理节点s4与其对应的nfs-dfs遍历树、nfs-dfs遍历树与其对应的可达标签集合的映射关系可参阅图3。如表1是图1中对应lr树的叶节点和其对应的可达标签集合,表2是图1中对应lr树的非叶节点和其对应的可达标签集合。

表1图1中对应lr树的叶节点和其对应的可达标签集合

表2图1中对应lr树的非叶节点和其对应的可达标签集合

图1中知识图谱对应的lr树示例可参阅图6。

在图1中查询在范围q内的地理节点与标签为l5的节点之间是否存在一条路径,即l(q)={l5},当对lr树进行检索时,由于则直接对p2、p4、p5等非节点的子树进行剪枝(若仅使用r树进行空间剪枝,则该查询下仅能对p5非叶节点的子树进行剪枝),从而提前规避了对p6,p7等2个非叶节点和s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13等11个叶节点的无效检索,提高了检索的效率。

以java编程语言实现的基于lr树的检索函数:

对比例

使用一些网络上公开的大规模企业的真实的脱敏后的数据对本发明提出的索引结构进行实验,以展示其效果。

实验环境

所做的实验都是基于如表3所示的实验环境:

表3实验环境参数

实验数据集

时间效率测试中所使用的数据集均是数据竞赛平台kaggle提供的大型公司的基于地理信息服务的业务的脱敏后的真实的公开数据集,如表4所示:

表4实验数据集

a是一家鼓励用户使用手机向其他人分享自己当前所在地理位置等信息,基于用户地理位置信息(lbs)的手机服务网站。实验中所使用的数据集是该公司收集到的包含在纽约和东京的聚会签到数据,每一条签到数据都具有时间戳、gps坐标和聚会类型等属性。

b是美国的点评网站,它涵盖了美国各地的餐馆、购物中心、酒店、旅游等行业。用户可以在b网站上评分、评价和交换购物体验等。实验中所使用的数据集是该公司的业务数据,其中包含了商家的地理信息坐标。

以上数据集都是公开的脱敏后的真实数据集,在进行实验时会根据实验的需要,对上述数据集进行数据清洗、手动标记标签等预处理操作。

下面的时间效率实验进行的是本发明的检索方法lr-tree与graphtraverse(图遍历)算法和spatialindex(空间索引)算法在使用同一数据集和同一搜索条件的情况下的算法时间效率对比实验。实验所使用的知识图谱中的地理节点、非地理节点和各节点之间的关联关系均通过实验数据集生成。在进行查询时,本实验采用的是随机生成可达性查询的方式,即查询一定范围内与指定标签的节点之间存在路径的地理节点的个数,其中查询范围和指定标签也是随机产生。对于每一个数据集所生成的知识图谱,产生三次不同的查询,最后实验结果的查询时间取三次查询所用时间的平均值。实验结果可参阅图4、图5。观察实验结果可以发现,基于本发明的检索方法lr-tree在标签松散场景下可以表现出非常良好的查询效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1