地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(1)

江西地名研究

关注我们,获取更多地名资讯

关注

摘要:针对中文地名数据中存在的“同名异地”“异地同名”等歧义问题,本文提出了一种结合地名知识和位置信息的地名匹配方法。首先基于特征词的规则匹配模式对地名名称结构进行了解析。然后结合地名的位置信息实现中文地名匹配;同时,基于地名的行政区划信息和实体信息关联多源地名数据,构建地名知识库。最后以兴趣点数据为例,基于名称相似度和位置相似度匹配地名数据中的地名信息,并以知识图谱的形式进行存储和表达。

关键词:地名知识;地名匹配;相似度计算;数据消歧

大数据时代的到来推动了各学科领域的发展,以测绘领域为例,海量的多源异构数据改变了传统单一学科领域的研究方式,引领了多学科领域间的交叉融合。针对地名解析与匹配方面,有价值的地理信息地名数据不断增长,但海量地名数据中存在诸如“同名异地”“同地异名”及数据冗余等歧义问题,严重影响地名数据的融合和应用。

实体匹配是从相同或不同数据源中获取描述同一客观世界实体数据的过程。针对地理数据匹配融合的研究始于20世纪80年代,目的是集成多源地理数据,丰富数据属性,提高数据精度。地名数据作为地理信息领域一种重要资源,针对地名数据的匹配研究得到许多学者的关注。从矢量空间数据中提取地名地理实体的几何特征、拓扑特征和属性特征,计算地名之间在几何形态、空间关系和属性语义上的相似性,以实现地名匹配。对于难以获取地名几何特征的兴趣点(point of interest,POI)数据,地名匹配研究主要是基于地名名称和位置信息对其进行相似性计算,进而得到匹配地名。考虑地名名称的汉语表达,文献[8]提出了基于字符串的模糊匹配算法,有效提高了地名名称匹配的效率。通过分析地名语言表达的特点,文献[9-11]提出了基于通名的地名语义解析方法,并综合地名专名和通名计算地名名称的复合相似度。

本文以POI数据作为数据源,针对数据中的地名歧义问题,提出一种结合地名知识和位置信息进行地名匹配的方法。首先,基于通名匹配对地名进行解析,提升地名名称相似性计算的准确度;同时,基于地名数据中的位置信息描述,计算地名数据在地理位置上的关联性。然后,结合地名名称相似度和位置相似度,衡量地名的语义一致性,并对描述同一实体的地名数据进行关联融合。最后,以图谱的形式对匹配后的地名数据进行存储和表达。

1 基于POI数据的地名匹配研究

POI数据主要描述人们日常生活中用到的地理场所对象,如学校、公司、生活服务产业及交通运输设施等,是一种与人类活动密切相关的地名数据。针对POI数据中存在的地名歧义问题,多源POI数据的匹配融合主要采用基于名称信息和位置信息的匹配方法。

地名名称的相似度计算方法主要有基于字符的名称匹配、基于中文分词的名称匹配和基于相似性的地名模糊匹配。基于字符的名称匹配是直接比较地名名称间相同的字符数,进行相似度计算,该方法比较简单,但忽视了字符在字符串中的位置,准确率不高。基于中文分词的名称匹配采用自然语言处理工具对地名名称进行分词,用分词代替字符进行匹配,对分词结果的相似度计算方法有Levenshtein距离算法、Jaccard相似算法和Jaro-Winkler距离算法。模糊地名匹配是将地名划分成不同类别或范围,对同一类别的地名进行词语相似度计算,得出具有名称相似性的地名数据。

POI数据中地名的位置信息主要以地理坐标的形式存在,通过地理坐标可以计算地名实体间的距离,进而计算空间位置相似度,进行地名匹配。统一的坐标参照系是进行空间位置相似度计算的前提。不同来源的数据可能存在坐标偏移,会对基于位置信息的匹配结果产生影响。文献[16]分析了最邻近方法、概率方法、标准化权重方法等基于空间位置信息进行POI数据匹配和融合的方法。

上述POI数据匹配存在局限性,主要为:①地名名称匹配未考虑其语义结构和语言特点;②地名名称相似度计算算法效果不够理想;③位置相似度计算没有考虑地名数据中与位置相关的其他信息(行政区划、邮政编码等),计算复杂度较高,针对POI数据庞大的数据体量,算法运行效率较低。

2 基于通名匹配的地名名称相似计算

地名作为一种指称某一范围内地理实体的自然语言文本,具备“专名+通名”的独特结构。其中,通名是描述地名所代表实体类型、性质的特定文本,如省、区等。专名是地名中用来相互区分的文本片段,如河南、二七等。在汉语中,地名的通名通常位于专名之后,如河南省、二七区等。

基于汉语中地名名称的表达特点,构建通名词表对地名进行文本匹配,从地名中提取地名类型信息和地名专名信息,进而实现对地名结构的解析。相较于单纯基于字符对地名名称进行相似度计算,基于地名解析进行地名名称相似度计算更加符合地名的语言结构特点。

2.1 方法流程

地名语义解析的流程如图1所示,主要包含4个步骤:①从地名数据中提取地名名称信息;②根据地名类型,选取特定特征词,构建地名特征词表;③基于构建的特征词表,对地名名称进行匹配,划分地名通名和地名专名;④基于地名的语义结构分别计算地名的专名相似度和类型相似度,将两者加权得到地名名称相似度。

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(2)

2.2 基于特征词的通名匹配

针对地名通名通常位于地名文本末端的特点,设计了基于特征词的逆向匹配方法,即从后向前进行匹配,当首次返回匹配特征词时,终止匹配。具体的匹配算法流程如下。

(1)名称信息提取。通过读取地名数据,抽取地名名称信息,作为输入的待匹配字符串。

(2)地名特征词表的构建和读取。根据地名数据的类型信息,统计地名名称表达特点并抽取通名特征词,构建特征词表作为地名通名匹配依据。

(3)根据特征词构建滑动窗口对地名名称进行逆向匹配,返回首次匹配结果。

(4)按字符串长度从长到短的顺序依次从特征词表中选取特征词,将特征词作为滑动窗口,从地名名称的末端开始进行匹配。若匹配成功,则终止匹配,并输出名称中的通名、专名及附属信息;若匹配失败,则修改窗口的起始和结束位置,继续进行匹配。

(5)当窗口的起始位置小于0,表明窗口已经遍历输入的名称字符串,终止通名匹配。

2.3 地名名称相似度计算

地名名称相似度是衡量两个地名在名称字符上的相似程度,描述同一实体的不同地名名称在专名表达上可能具有模糊性,因此需要对地名专名进行字符相似程度计算,并结合地名通名信息,计算地名名称的相似度。

专名相似度计算借鉴KMP(Knuth-Morris-Pratt)算法思想,计算专名字符串之间在字符表达上的相似程度。地名专名

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(3)

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(4)

,其中,

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(5)

分别表示专名A、B中的中文字符,m和n分别为专名A和B的字符长度。专名字符串相似性匹配方法如下:

(1)比较两个字符串长度,将字符串长度较短的专名分割成单个字符组成目标集,假设专名B字符串较短,分割构成的字符集合为

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(6)

(2)按从前向后的顺序从B集合取字符

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(7)

,并在专名A中从正向查找匹配字符。若存在匹配字符

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(8)

,则跳至处对专名A进行切分,取后的字符组成专名A的子字符串作为后续匹配过程的输入字符串,并进入下一个字符进行匹配;若找不到匹配字符,则跳至B集合中下一个字符进行匹配,直至B集合中每个字符完成匹配过程。记录专名A与B匹配的字符个数为k,则专名A和B之间的相似度

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(9)

的计算公式为

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(10)

根据地名通名信息分析地名类型的相似性,并在计算地名名称相似度时赋予相应的权重。若两个地名通名完全相等,则地名类型相似度权重为1;若地名通名不等,根据地名分类属性的差异对地名类型相似度进行赋值。若地名分类的小类相同,则地名类型相似度取0.8;若地名分类的小类不同中类相同,则地名类型相似度取0.6;若地名分类的中类不同,则地名类型相似度取0.4。将专名相似度与地名类型相似度结合,得到地名名称的相似度S(A,B)为

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(11)

式中,

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(12)

为地名名称通名相似度。

结合名称信息和位置信息的地名匹配

地名匹配的目的是查找描述同一实体的地名数据,并进行关联融合。本文分别从地名名称和位置信息考虑地名数据之间的关联性,基于地名名称解析计算地名名称相似度,基于位置信息计算地名位置相似度,结合地名名称相似度和位置相似度对地名数据进行匹配关联。

3.1 方法流程

地名具备空间位置和语言表达两大特性。在POI数据中,地名的位置特性主要体现在坐标信息、行政区划信息及邮政编码等与空间位置相关的信息,地名的语言表达特性主要体现在地名名称和地址信息中独特的语言表达方式。

结合地名知识和位置信息的地名匹配流程如图2所示。

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(13)

3.2 地名相似性计算

3.2.1空间位置相似性计算

在POI数据中,地名位置信息主要通过地理坐标和行政区划信息进行表达。地理坐标记录了地名所描述实体(地名实体)的精确地理位置,精度较高;行政区划信息记录地名所在地域范围,位置精度较低。虽然地理坐标描述位置更加精确,但是在数据采集、整理时易产生误差导致坐标发生偏移。而行政区划信息准确度较高,不易产生较大偏差。因此,在计算位置相似度时,首先考虑地名是否在同一行政区划内。若处于不同行政区划,那么地名在位置上一定无法匹配;若处于同一行政区划,再根据地名坐标信息计算地名在空间位置上的相似程度。

基于地理坐标的地名位置相似度是基于地名间的球面距离进行计算的,最简单有效的方法是将距离的倒数作为位置相似度结果,当这个相似度大于某一阈值时,则认为两个地名是相互匹配的。为了将计算结果的阈值控制在0~1之间,计算地名位置相似度的公式为

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(14)

式中,dis(A,B)为两个地名之间距离;和

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(15)

为两个地名的纬度;和

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(16)

为两个地名的经度;

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(17)

为两个地名的位置相似度。

3.2.2地名名称相似性计算

地名名称相似性计算采用2.3节提出的基于语义解析的地名名称相似度计算方法。通过语义解析提取地名名称中的专名和通名,分别计算专名和通名的相似性,通过加权计算得到地名名称相似度。

3.3 地名匹配

根据地名相似度计算和地名位置相似度计算结果可以将地名数据分为4大类:①地名名称相似,描述的空间位置相近;②地名名称相似,描述的空间位置不同;③地名名称不相似,描述的空间位置相同;④地名名称不相似,描述的空间位置相近。

第①类地名数据是相似程度最高的地名数据,可以直接进行匹配;第②类地名数据在名称上具备关联性,可能包含了同一实体分布在不同地理位置的组成部分(如同一所大学的不同校区),可以根据实体名称对地名数据进行关联;第③类地名数据在空间上具备关联性,可能包含同一实体不同名称的表述或同一实体不同组成部分(如在POI数据中,一些学校教学楼省略了学校名称),这些地名可能在名称上没有记录数据间的关联性,但在描述的空间位置上体现出地名间的关联性;第④类地名数据则是在名称和空间都不相关的数据,对于这些地名不进行匹配关联。

3.4 地名数据关联

地名数据中除了描述地名本身属性、特征外,还蕴含着丰富的实体间关系(如同一实体关联不同地名数据,处于相同行政区划的不同地名数据)。通过从数据中抽取地名关系,建立地名数据之间的关联,显式表达地名数据之间的联系。POI数据中的地名关联主要分为实体关联性(描述相同实体)和位置关联性(处于同一空间范围)。指向同一实体的地名数据可以通过地名匹配获取,读取数据中的行政区划信息,将处于同一行政区划(空间区域)的数据进行关联。最终,基于地名数据中的实体关联性和空间关联性进行关系构建,通过地名关系将原本零散的数据组织成具有实体特征或空间特征的集合,并基于知识图谱的形式进行地名数据的存储管理和可视化。

试验与分析

试验数据为北京市的POI数据(见表1),包含科教文化服务、公共设施、医疗保健服务等多个生活领域内的地名信息。数据内容包括地名名称、分类信息、行政区划信息、地址和空间坐标(WGS⁃84大地坐标系)等。

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(18)

4.1 地名语义解析试验

以科教文化类地名数据为例,对数据中出现的地名特征词进行统计分析(如图3所示),分析每个特征词在数据中出现的频率,选取出现频率较高的特征词构建地名特征词表。

在实际数据中存在多特征词共现的问题,如“北京师范大学密云实验中学”。基于构建的特征词表采用逆向匹配的方法对地名通名进行匹配,对地名名称的语义进行解析。分析召回的地名通名结果(见表1),与特征词出现频数比较发现,通名匹配的召回数略低,分析其主要原因是地名特征词重叠和地名附属信息干扰。POI数据中一些地名数据存在附属信息,会对通名匹配结果造成影响。这种附属信息的出现有两种形式:①以括号内容出现在地名后部,常用来说明地名位置信息,如“培基双语幼儿园(甘露园2号院北)”;②直接与地名相连,常用来说明地名实体关系信息,如“北京市第二幼儿园分院”。

针对上述问题,提取地名名称中的附属信息是提高通名匹配准确度和召回率的有效途径。以括号形式出现的附属信息可直接通过规则匹配提取;没有以括号形式出现的附属信息,可依据关键词信息或语义关系准确识别地名通名,如统计一些常见附属信息的表达,提取附属信息。其中,提取以括号形式出现的附属信息后,再进行地名通名匹配的结果见表2。由表2可知,提取地名的附属信息对提高地名通名匹配的准确度有一定影响。

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(19)

4.2 地名匹配试验

基于地名名称相似度和位置相似度进行匹配计算,得到在名称和位置上都具有相似性的地名数据,结果见表3。

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(20)

从试验结果可以看出,具有名称相似特性的地名数据比最终地名匹配数据要多,其主要原因为:存在位于不同位置描述相似实体的地名数据(如同一所学校的不同校区在地理位置上并不相邻);地名名称中的附属信息会干扰通名匹配结果,影响地名名称相似度计算,如“某研究院昌平区分院”识别的通名为“院”,对名称相似度计算的准确度会产生影响。

4.3 地名数据关联与可视化

POI数据之间关联方式分为实体关联和位置关联。根据地名数据描述的实体信息,将描述同一实体的地名进行关联;根据地名数据中的位置信息,将位于同一空间范围的地名数据关联。根据地名匹配结果,对描述同一实体的地名和位于同一行政区划(区县)内的地名进行抽取,构建对应关系,并以知识图谱的形式进行知识的存储和管理。以北京大学为例,依据行政区划对地名数据进行组织,描述不同校区内的同名数据,如图4所示。地名数据不仅与描述的地理实体进行关联,而且可以根据地名的位置信息对同名数据进行区别。

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(21)

结语

本文主要针对地名数据中存在的歧义问题,基于特征词匹配提取地名通名,提升地名名称匹配效果,在地名名称匹配的基础上,结合地名的位置信息对地名进行了匹配,得到描述同一实体、同一位置的地名数据,并对数据进行了关联。试验表明,结合地名的名称信息和位置信息进行地名匹配,可提高POI数据中语义一致性。本文采用的通名提取算法在处理特征词重叠和地名附属信息上有待改进,在今后研究中可以考虑引入自然语言处理方法对地名语义结构进行划分,提升地名语义解析的准确度。

文章作者:姜松言、宋国民、贾奋励、陈令羽、张蓝天

文章来源:《测绘通报》2022年第5期

选稿:耿瞳

编辑:计梦菲

校对:黎淑琪

审订:汪依婷

责任编辑:黄舒馨

(由于版面有限,文章注释内容请参照原文)

地名匹配方法(结合地名知识和位置信息的中文地名匹配方法)(22)

欢迎来稿!欢迎交流!

转载请注明来源:“江西地名研究”微信公众号

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页