欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2021104455595
申请人: 杭州电子科技大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种融合地理知识的混合知识图谱构建方法,该方法包含如下步骤:

步骤1:设计混合知识图谱中地理知识模型

针对已有的百科类知识图谱G中部分带有地理知识属性的实体以下称为地理实体,及这些实体间隐含的地理知识信息设计地理知识模型,将地理知识融入已有百科类知识模型中,以实现混合知识图谱的知识表示;具体地,设计了如下三类地理实体间关系及属性的定义规则:步骤1.1:定义地理实体的距离关系

根据地理实体的经纬度信息获得经纬度点(lat,lon),利用Haversine公式计算出两两经纬度点间的距离d:其中,R表示地球半径,取平均值6371km;根据不同的距离范围,将距离关系定义为:邻近nextTo、附近nearBy、不远notFarFrom、稍远notAround、较远littleFarFrom,邻近nextTo对应的范围为(0m,100m],附近nearBy对应的范围为(100m,1000m],不远notFarFrom对应的范围为(1000m,2000m],稍远notAround对应的范围为(2000m,3000m],较远littleFarFrom对应的范围为(3000m,4000m];

步骤1.2:定义地理实体的方位关系

根据地理实体的经纬度信息获得经纬度点(lat,lon),根据公式2计算出两两间的方位关系,将方位关系分别定义为:向南northOf、向北southOf、向西eastOf、向东westOf;

向南northOf=A northOf B if latA>latB

向北southOf=A southOf B if latA

向西eastOf=A eastOf B if lonA>lonB

向东westOf=A westOf B if lonA

步骤1.3:定义地理实体的类型

根据地理实体各自的特点及功能,将其划分为31种不同类型,包括:学校、医院、银行、超市、博物馆、派出所、餐馆、汽车站、图书馆、写字楼、住宅区、企业、事业单位、运动场所、休闲场所、景点、便利店、药店、科技园区、电影院、教堂、公园、停车场、公交站、商场、加油站、果蔬店、打印店、地铁站、酒店宾馆、公共厕所;

步骤2:知识获取

分别从地理数据集S和百科类知识图谱G中获取所需知识;具体地,从以下两方面展开:

步骤2.1:获取地理实体及地理位置信息

从地理数据集S中获取部分地理实体的经纬度信息及实体类型相关信息,并将经纬度信息存储为地理实体的数据属性;根据步骤1.1的定义规则,通过经纬度信息计算出地理实体两两间的距离关系;为每个地理实体e随机选取m个邻居实体em,根据步骤1.2的定义规则,通过经纬度信息计算出两两间的方位关系;根据获取的实体类型相关信息,将地理实体重新划分到步骤1.3中定义的31种类型中,同时添加为地理实体的类型属性;

步骤2.2:抽取包含地理实体的部分子图

从百科类知识图谱G中抽取包含地理实体的部分子图G’,即这些地理实体n跳内的知识信息;具体如下:首先,创建两个集合Ce和Cr,分别用来保存n跳子图中的实体和连接两两实体的边;其次,人工选取一个在步骤2.1对应地理位置范围内的地理实体e0作为根结点,通过广度优先搜索算法在百科知识图谱G中向外遍历,直到循环遍历完e0所有的邻居实体en,将e0添加到集合Ce中,将e0连接到每个邻居实体en的边都添加到集合Cr中,同时记录下当前广度优先搜索的层数k;接着新建一个候选集合Cs,将所有邻居实体en添加到候选集合Cs中,作为下次迭代的候选结点;不断迭代直到当前遍历层数k大于用户指定跳数n,迭代结束,子图G’完成抽取;

步骤2.3:针对步骤2.1所获取的数据进行预处理,得到适合图谱构建的结构化数据,具体如下:首先,构建两个列表list1和list2,分别用于存放按行读入的脏数据和清洗后的数据;其次,按行遍历list1,判断当前数据行中地理实体名字段、经度字段和纬度字段是否含有缺失值,若有,则删除当前数据行;若没有,则将当前数据行中地理实体名字段、经度字段、纬度字段以及与实体类型相关的字段,按行存入list2;最后,新建一个文本文件T1用于存放清洗整理后的结构化数据文本,将list2中的值按行输出到T1中;

步骤2.4:针对步骤2.2所获取的数据进行预处理,以得到适合混合知识图谱构建的数据;具体如下:首先,构建一个列表listG’,用于存放抽取的子图G’;其次,按行读入抽取的子图数据并存入构建好的列表listG’中,按行遍历listG’,依次比较当前实体名字段是否与上一行中的实体名字段相同,若不同则继续遍历;若相同,则继续判断其所在行的关系与属性名字段是否与上一行中的相应字段相同或存在包含与被包含关系;若不同则继续遍历;若存在包含与被包含关系,将当前的关系与属性名的值更新为上一行中相应字段的值;若相同,则继续判断其所在行的实体或属性值字段是否与上一行中的相应字段相同或存在包含与被包含关系;若不同则继续遍历;若相同或存在包含与被包含关系,则判断当前数据行是上一行的重复数据,进行删除操作,更新listG’;最后,新建一个文本文件T2用于存放去重后的子图数据,将最终更新的listG’中的值按行输出到T2中;

步骤3:建立地理实体名称字典

为了更好的对步骤2.1中获取的地理实体和步骤2.2中抽取的子图G’进行实体链接,就地理实体名、中文名、英文名和别称建立名称字典D,描述了地理实体名与中文名、英文名及别称之间的对应关系;其中,地理实体名从地理数据集中获取;中文名和英文名可根据地理实体名相应获取,部分缺失值可由互联网描述予以补充;别称由互联网定性描述得到;

步骤4:实体链接

根据步骤3构建好的地理实体名称字典D,依次就地理实体名、中文名、英文名和别称字段,分别与抽取的子图G’中获取的中文名字段和英文名字段做同名实体链接工作;具体如下:首先,创建两个列表listN和列表listD,分别用来保存按行读入的地理实体名称字典中的数据行和子图G’中的数据行;

其次,创建一个新的列表newlistD,若listD中属性“中文名”、“英文名”的属性值包含listN中最先读入的地理实体名字段中的值或与之相同,就将该地理实体在子图G’中对应的数据行存入新创建的列表newlistD;直到首轮遍历结束,重复上述操作循环遍历listN中的剩下的中文名、英文名和别称字段,更新newlistD;接着新建一个文本文件T4,用于存放经过同名实体链接匹配出的地理实体及其在子图G’中对应的数据行,将循环遍历结束后newlistD中的值输出到T4中;

然后处理T4中的同名异地实体,按行读入T4,依次判断是否同名,若同名则将同名实体对应数据行依次添加到新建的listS,通过地理实体与行政区划的经纬度值,分别计算多个同名实体与行政区划之间的经纬度差值,若经度差大于阈值£1或纬度差大于阈值£2时,判断为同名异地实体,并将这些实体及其对应数据行一起保留,更新listS,继续读入T4中的数据,遍历到下一组同名实体后重复上述操作;接着新建一个文本文件T5,用于存放同名异地实体及其对应的数据行,直到遍历结束将最后更新的listS中的值输出到T5;

最后,根据T5中地理实体的类型判断是否与地理数据集S中的地理实体为同一实体,将不一致的实体对应的数据行从T4中手动删除,实现地理实体消歧,以获得融合地理知识的混合知识图谱Gf。