掌桥专利:专业的专利平台
掌桥专利
首页

地名匹配方法、装置、电子设备及机器可读存储介质

文献发布时间:2023-06-19 09:24:30


地名匹配方法、装置、电子设备及机器可读存储介质

技术领域

本申请涉及数据挖掘技术领域,尤其涉及一种地名匹配方法、装置、电子设备及机器可读存储介质。

背景技术

随着数据量越来越多,如何将数据进行有效合并成为一个热门研究方向。

以地名数据为例,目前地名数据合并方案主要是通过人工的方式进行地名匹配,并基于匹配结果对地名数据进行合并,实现效率较低。

发明内容

有鉴于此,本申请提供一种地名匹配方法、装置、电子设备及机器可读存储介质。

根据本申请实施例的第一方面,提供一种地名匹配方法,包括:

确定第一地名和第二地名的第一相似度;

将所述第一地名中的第一专用名与所述第二地名中的第二专用名进行对换,以得到第三地名和第四地名;

分别基于所述第三地名和所述第四地名,调用地图服务,获取与所述第三地名匹配的第五地名,和与所述第四地名匹配的第六地名;

确定所述第五地名和所述第六地名的第二相似度;

基于所述第一相似度和所述第二相似度,对所述第一地名和所述第二地名进行匹配。

根据本申请实施例的第二方面,提供一种地名匹配装置,包括:

确定单元,用于确定第一地名和第二地名的第一相似度;

对换单元,用于将所述第一地名中的第一专用名与所述第二地名中的第二专用名进行对换,以得到第三地名和第四地名;

获取单元,用于分别基于所述第三地名和所述第四地名,调用地图服务,获取与所述第三地名匹配的第五地名,和与所述第四地名匹配的第六地名;

所述确定单元,还用于确定所述第五地名和所述第六地名的第二相似度;

匹配单元,用于基于所述第一相似度和所述第二相似度,对所述第一地名和所述第二地名进行匹配。

根据本申请实施例的第三方面,提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现第一方面的地名匹配方法。

根据本申请实施例的第四方面,提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现第一方面的地名匹配方法。

本申请实施例的地名匹配方法,一方面,确定第一地名和第二地名的第一相似度;另一方面,将第一地名中的第一专用名与第二地名中的第二专用名进行对换,以得到第三地名和第四地名,分别基于第三地名和第四地名,调用地图服务,获取与第三地名匹配的第五地名,和与第四地名匹配的第六地名,并确定第五地名和第六地名的第二相似度,进而,基于第一相似度和第二相似度,对第一地名和第二地名进行匹配,通过专用名对换,实现了地名数据扩增,提高信息的利用率,进而,提高了地名匹配的准确率。

附图说明

图1是本申请一示例性实施例示出的一种地名匹配方法的流程示意图;

图2是本申请一示例性实施例示出的一种对第一地名和第二地名进行匹配的流程示意图;

图3是本申请一示例性实施例示出的一种地名匹配方法的流程示意图;

图4是本申请一示例性实施例示出的一种地名匹配装置的结构示意图;

图5是本申请一示例性实施例示出的一种电子设备的硬件结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面先对本申请实施例中涉及的部分技术术语进行简单说明。

通用名字典:通用名字典指的是具有通用性的字典列表,具体的通用名针对不同的应用有不同的指向,在本文中的通用名字典指的是与地名相关的内容。

本申请实施例中,通用名字典可以包括常用通用名字典和领域通用名字典。其中:

常用通用名字典:对于地名匹配的计算,常用的通用名字典,包括行政区划对应的省市县街道社区等,通过从网上将对应的材料下载下来,并对应将省市县街道社区等地名相关的缩写也整理得到。

领域通用名字典:根据场所分类来匹配地名,首先需要给对应地名匹配上对应的场所分类,根据应用行业不同,分别建立不同的场所类型的字典,如网吧网咖属于娱乐场所、医院属于医疗场所,因此,网吧或网咖属于娱乐场所的通用名字典中的通用名,通过将对应行业不同的场所类型和对应有的领域通用名汇总得到领域通用名字典,以辅助地名匹配。

场所分类:是指基于既定角度制定的场所分类,如超市、农贸市场、铁路站点、政府机关等。该数据可以融合国家标准以及科学布建等内容制定出来。

分词:特指中文分词(Chinese Word Segmentation),指的是将一个汉字序列切分成一个个单独的词,分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。例如,我爱北京天安门,分词的结果就是我/爱/北京/天安门。常见的中文分词工具有jieba、SnowNLP等。

文本相似度:是指两个文本之间的相似度,在搜索引擎、推荐系统、论文鉴定、机器翻译、自动应答、命名实体识别、拼写纠错等领域有广泛的应用。

为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。

请参见图1,为本申请实施例提供的一种地名匹配方法的流程示意图,如图1所示,该地名匹配方法可以包括以下步骤:

步骤S100、确定第一地名和第二地名的第一相似度。

本申请实施例中,第一地名和第二地名并不特指固定的两个地名,而是可以指代任意两个需要进行匹配的地名。

例如,第一地名和第二地名可以为来自两个不同数据源的地名。

需要说明的是,对于获取到的地名(包括第一地名或第二地名),在从数据源中获取地名时,还可以获取到该地名对应的行政区划以及场所分类等信息。

示例性的,当需要对第一地名和第二地名进行匹配时,一方面,可以按照已有策略确定第一地名和第二地名的相似度(本文中称为第一相似度)。

例如,可以基于文本相似度计算的方式,确定第一地名和第二地名的相似度。

步骤S110、将第一地名中的第一专用名与第二地名中的第二专用名进行对换,以得到第三地名和第四地名。

本申请实施例中,通过通用名字典将地名中的通用名识别出来,不能识别出来的主干词语则认为是该地名中的专用名。

示例性的,为了识别地名中的通用名和专用名,可以预先创建对应的通用名字典(常用的包括省市县区街道(可以称为常用通用名)等等,根据不同的场所类型,也可以增加场所的通用名(可以称为领域通用名),如网吧或网咖、加油站、医院等等),对于任一地名,可以基于该地名查询所创建的通用名字典,并将地名中包括的不属于通用名的主干词语确定为专用名。

考虑到通常两个相似度较高的地名,若该两个地名可以合并,则该两个地名之间的不同可能是由于地名来源库中的地名不规范而导致的,即不同地名来源库中对于对应同一对象的专用名,描述方式可能不同。

例如,对于海康威视,有的地名来源库中可能直接描述为海康威视,有的地名来源库中可能描述为海康或者海康三期等。

而对于这种情况,当对该两个地名进行专用名对换之后,得到的新的两个地名之间的相似度通常也会比较高。

相反地,对于相似度较低的两个地名,若该两个地名不可以合并,则对该两个地名进行专用名对换之后得到的新的两个地名之间的相似度通常也还是会比较低。

可见,通过专用名对换,可以实现地名数据扩增,提高信息的利用率,进而,提高地名匹配的准确率。

本申请实施例中,可以分别基于第一地名和第二地名,查询所创建的通用名字典,确定第一地名和第二地名中的专用名,并将第一地名中的特定专用名(本文中称为第一专用名)与第二地名中的特定专用名(本文中称为第二专用名)进行对换,以得到专用名替换后的第三地名和第四地名,以实现地名数据扩增,以提高信息的利用率,从而提高数据比对的结果的准确性。

举例来说,假设第一地名中包括若干通用名+专用名Z1,第二地名中包括若干通用名+专用名Z2,则进行专用对换得到的第三地名可以为第一地名中包括的若干通用名+专用名Z2,第四地名可以为第二地名中包括的若干通用名+专用名Z1。

在一个示例中,当第一地名中存在多个专用名时,将该多个专用名中最长的专用名确定为第一专用名;

当第二地名中存在多个专用名时,将该多个专用名中最长的专用名确定为第二专用名。

示例性的,考虑到地名中也可能会存在多个专用名,在该情况下,可以将地名中最长的专用名(可以称为主干专用名)确定为进行对换的专用名。

相应地,当第一地名中存在多个专用名时,可以将该多个专用名中最长的专用名确定为第一专用名。

同理,当第二地名中存在多个专用名时,可以将该多个专用名中最长的专用名确定为第二专用名。

步骤S120、分别基于第三地名和所述第四地名,调用地图服务,获取与第三地名匹配的第五地名,和与第四地名匹配的第六地名。

本申请实施例中,考虑到对第一地名和第二地名进行专用名对换后得到的第三地名和第四地名可能并不规范,不属于标准地址,进而可能影响地名匹配的准确性。

因此,通过对第一地名和第二地名进行专用名对换得到第三地名和第四地名之后,可以分别基于第三地名和第四地名,调用地图服务,获取与第三地名匹配的标准地址(本文中称为第五地名),以及,与第四地名匹配的标准地址(本文中称为第六地名)。

在一个示例中,步骤S120中,分别基于第三地名和第四地名,调用地图服务,获取与第三地名匹配的第五地名,和与第四地名匹配的第六地名,可以包括:

基于第三地名,以及第三地名对应的行政区划,调用地图服务,以第三地名以及第三地名对应的行政区划为搜索关键词进行地址搜索,得到第五地名;

以及,

基于第四地名,以及第四地名对应的行政区划,调用地图服务,以第四地名以及第四地名对应的行政区划为搜索关键词进行地址搜索,得到第六地名。

步骤S130、确定第五地名和第六地名的第二相似度。

本申请实施例中,当按照步骤S110~步骤S120中描述的方式得到第五地名和第六地名时,可以确定第五地名和第六地名的相似度(本文中称为第二相似度)。

示例性的,可以基于文本相似度计算的方式,确定第五地名和第六地名的相似度(即第二相似度)。

步骤S140、基于第一相似度和第二相似度,对第一地名和第二地名进行匹配。

本申请实施例中,可以基于第一地名和第二地名的第一相似度,以及对第一地名转换得到的第五地名和对第二地名进行转换得到的第六地名的第二相似度,对第一地名和第二地名进行匹配。

可见,在图1所示方法流程中,通过对待匹配的两个地名进行专用名对换,实现数据扩增,并分别基于原始地名之间的相似度,以及专用名对换之后得到的标准地址之间的相似度,对待匹配的两个地名进行匹配,实现了地名自动匹配,提高了地名匹配效率,此外,通过数据扩增,提高了信息的利用率,从而提高了地名匹配的准确性。

在一些实施例中,如图2所示,步骤S140中,基于第一相似度和第二相似度,对第一地名和第二地名进行匹配,可以通过以下步骤实现:

步骤S141、基于预设权值,确定第一相似度和第二相似度的加权和。

步骤S142、基于加权和对第一地名和第二地名进行匹配。

示例性的,可以预先设置上述第一相似度和第二相似度的权值(可以根据实际场景设定,该值可以为经验值或实验值)。

当按照上述方式确定了第一地名和第二地名的第一相似度,以及第五地名和第六地名的第二相似度时,可以基于预设阈值,对第一相似度和第二相似度进行加权,以得到加权和,并基于该加权和对第一地名和第二地名进行匹配。

例如,S=s1*w1+s2*w2;s1为第一相似度,s2为第二相似度,w1和w2分别为预设的第一相似度和第二相似度的权重,S为最终相似度,即第一相似度和第二相似度的加权和。

在一个示例中,步骤S142中,基于加权和对第一地名和第二地名进行匹配,可以包括:

当加权和大于等于预设相似度阈值时,确定第一地名和第二地名匹配成功。

示例性的,当确定了第一相似度和第二相似度的加权和时,可以比较该加权和与预设相似度阈值,并当该加权和大于等于预设相似度阈值时,确定该第一地名和第二地名匹配成功。

本申请实施例中,当确定第一地名和第二地名匹配成功时,可以基于对第一地名和第二地名进行数据合并。

基于上述针对第一地名和第二地名的处理流程,可以分别对来自不同数据源的各地名进行匹配,并在匹配成功时进行合并,进而,基于地名匹配和合并处理,建立对应的地名库。

在一些实施例中,步骤S100中,确定第一地名和第二地名的第一相似度之后,还可以包括:

比较第一相似度与预设最小相似度;

当第一相似度大于等于预设最小相似度时,确定执行上述将第一地名中的第一专用名与第二地名中的第二专用名进行对换的操作。

示例性的,考虑到当第一地名和第二地名的相似度很低时,第一地名和第二地名能够匹配成功的概率相应会很低,在该情况下,为了在保证地名匹配准确性的情况下,提高地名匹配效率,可以预先设定最小相似度(可以根据实际场景设定,该值可以为经验值或实验值)。当按照步骤S100中的方式确定了第一地名和第二地名的第一相似度时,可以比较该第一相似度与预设最小相似度,并在该第一相似度大于等于该预设相似度阈值时,继续执行上述步骤S110~步骤S140中的相关处理。

示例性的,当第一相似度小于预设相似度阈值时,可以确定第一地名和第二地名匹配失败,并不再执行上述步骤S110~步骤S140中的相关处理。

需要说明的是,在本申请实施例中,当第一地名和第二地名的相似度大于等于预设最大相似度(可以根据实际场景设定,该值可以为经验值或实验值)时,可以确定第一地名和第二地名匹配成功,并不再执行上述步骤S110~步骤S140中的相关处理,其具体实现在此不做赘述。

此外,考虑到对于可以合并的两个地名,在进行专用名替换后通常得到的新的地名的相似度也会比较高,而若进行专用名替换后得到的新地名的相似度过低,则通常该两个地名可以合并的概率也会很低,因此,当专用名替换后得到的地名的相似度过低时,待匹配的两个地名能够合并的概率也相应较低。

相应地,在本申请实施例中,当上述第二相似度过低(可以通过设置阈值点方式来表征,低于该阈值,则确定过低)时,可以将第二相似度的相反数用于求取最终的相似度,或者,第二相似度不参与地名匹配。

例如,S=s1*w1-s2*w2,或者,S=s1*w1,又或者,S=s1。

为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面结合具体应用场景对本申请实施例提供的技术方案进行说明。

在该实施例中,根据不同源头采集到的数据,包括地名、行政区划、场所分类等数据,进行数据的合并,从而构建对应的地名库。

示例性的,首先,建立出对应的通用名字典(常用的包括省市县区街道等等,根据不同的场所类型,也可以增加场所的通用名,如网吧或网咖、加油站、医院等等)。

其次,从不同的数据源中分别选取一条地名(假设分别为A1(即上述第一地名),B1(即上述第二地名))进行文本相似度计算,得出相似度simi1(即上述第一相似度),然后将对应A1和B1中的专用名(去除通用名的认为是专用名)相互替换,从而达到数据扩增的效果。

再者,将替换的地名和行政区划结合起来分别调用地图服务API(ApplicationProgramming Interface,应用程序接口)得到对应的标准地址,并计算出对应标准地址的相似度simi2(即上述第二相似度)。

最后,根据第一相似度和第二相似度来判断两个地名(A1和A2)是否能够匹配上,进而帮助合并不同的数据源。

该方法能提高数据合并的准确率和有效性,能大大减少人工成本,在大数据中应用价值较高。

下面结合图3所示的地名匹配流程图,对本申请实施例提供的地名匹配方案的主要技术点进行说明。

该实施例中,地名匹配可以包括以下技术点:1、建立通用名字典;2、计算地名相似度simi1;3、计算地名相似度simi2;4、匹配结果计算。

下面分别对各主要技术点进行说明。

1、建立通用名字典:

1.1、常用通用名字典建立:对于地名匹配的计算,常用的通用名字典,包括行政区划对应的省市县街道社区等,通过从网上将对应的材料下载下来,并对应将省市县街道社区等地名相关的缩写也整理好(避免地名来源库中的地名不规范导致地名匹配准确性降低)。

1.2、领域通用名字典的建立:根据场所分类来匹配地名,首先需要给对应地名匹配上对应的场所分类,根据应用行业不同,分别建立不同的场所类型的字典,如网吧网咖属于娱乐场所、医院属于医疗场所,因此,网吧或网咖属于娱乐场所的通用名字典中的通用名,通过将对应行业不同的场所类型和对应有的领域通用名汇总得到领域通用名字典,以辅助地名匹配。

2、计算相似度simi1:

对于来自不同数据源的地名A1和B1,首先进行数据清洗:去除对应的特殊符号等;然后,进行分词,并进行文本相似度计算,从而确定地名A1和B1的地名相似度simi1。

3、计算相似度simi2:

3.1、地名数据扩增:首先将地名A1、B1中的专用名互换,从而达到数据扩增的目的。

示例性的,在计算地名相似度simi1的时候,已经充分利用地名A1、B1中的信息,但是由于数据比对过程中,数据信息较少,因此采用数据扩增的方法,能有效提高信息的利用率,从而提高数据比对的结果。

专用名互换的过程是通过通用名字典将对应的通用名识别出来,不能识别出来的主干词语则认为是对应的专用名,将主干专用名(如最长的专用名)进行替换,得到对应替换后的地名A2(即上述第三地名)、B2(即上述第四地名)。

3.2、地名标准地址获取:根据替换后的地名A2、B2,结合对应地名的行政区划,分别调用地图服务获取相应的标准地址A3(即上述第五地名)、B3(即上述第六地名)。

3.3、地名相似度simi2:根据上面获取的地名A3、B3,利用分词和文本相似度计算的方法,获取对应的地名相似度simi2。

4、匹配结果计算

将对应的地名相似度simi1和地名相似度simi2进行组合计算(如求加权和),并与预设阈值(即上述相似度阈值)比较,基于比较结果来判断地名A1和B1是否匹配成功,从而达到数据合并的目的。

在该实施例中,当地名A1和B1匹配成功时,可以进行数据合并处理,进而,可以基于合并后的数据,建立对应的地名库。

可见,在该实施例中,基于自然语言处理与机器学习方法对地名进行匹配,与人工匹配的方式相比,可以大大节省人力成本,而且通过数据扩增,将对应的信息充分利用。

以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:

请参见图4,为本申请实施例提供的一种地名匹配装置的结构示意图,如图4所示,该地名匹配装置可以包括:

确定单元410,用于确定第一地名和第二地名的第一相似度;

对换单元420,用于将所述第一地名中的第一专用名与所述第二地名中的第二专用名进行对换,以得到第三地名和第四地名;

获取单元430,用于分别基于所述第三地名和所述第四地名,调用地图服务,获取与所述第三地名匹配的第五地名,和与所述第四地名匹配的第六地名;

所述确定单元410,还用于确定所述第五地名和所述第六地名的第二相似度;

匹配单元440,用于基于所述第一相似度和所述第二相似度,对所述第一地名和所述第二地名进行匹配。

在一些实施例中,当所述第一地名中存在多个专用名时,将该多个专用名中最长的专用名确定为所述第一专用名;

当所述第二地名中存在多个专用名时,将该多个专用名中最长的专用名确定为所述第二专用名。

在一些实施例中,所述获取单元430分别基于所述第三地名和所述第四地名,调用地图服务,获取与所述第三地名匹配的第五地名,和与所述第四地名匹配的第六地名,包括:

基于所述第三地名,以及所述第三地名对应的行政区划,调用地图服务,以所述第三地名以及所述第三地名对应的行政区划为搜索关键词进行地址搜索,得到所述第五地名;

以及,

基于所述第四地名,以及所述第四地名对应的行政区划,调用地图服务,以所述第四地名以及所述第四地名对应的行政区划为搜索关键词进行地址搜索,得到所述第六地名。

在一些实施例中,所述匹配单元440基于所述第一相似度和所述第二相似度,对所述第一地名和所述第二地名进行匹配,包括:

基于预设权值,确定所述第一相似度和所述第二相似度的加权和;

基于所述加权和对所述第一地名和所述第二地名进行匹配。

在一些实施例中,所述匹配单元440基于所述加权和对所述第一地名和所述第二地名进行匹配,包括:

当所述加权和大于等于预设相似度阈值时,确定所述第一地名和所述第二地名匹配成功。

在一些实施例中,所述对换单元420在所述确定单元410确定第一地名和第二地名的第一相似度之后,还包括:

比较所述第一相似度与预设最小相似度;

当所述第一相似度大于等于所述预设最小相似度时,将所述第一地名中的第一专用名与所述第二地名中的第二专用名进行对换。

在一些实施例中,所述对换单元420将所述第一地名中的第一专用名与所述第二地名中的第二专用名进行对换之前,还包括:

创建通用名字典,所述通用名字典用于记录地名中的通用名,所述通用名包括常用通用名和领域通用名;

分别基于所述第一地名和所述第二地名,查询所述通用名字典,以确定所述第一地名和所述第二地名中的专用名;其中,所述专用名为地名中包括的不属于通用名的主干词语。

请参见图5,为本申请实施例提供的一种电子设备的硬件结构示意图。该电子设备可以包括处理器501、通信接口502、存储器503和通信总线504。处理器501、通信接口502以及存储器503通过通信总线504完成相互间的通信。其中,存储器503上存放有计算机程序;处理器501可以通过执行存储器503上所存放的程序,执行上文描述的地名匹配方法。

本文中提到的存储器503可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器502可以是:RAM(Radom AccessMemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

本申请实施例还提供了一种存储有计算机程序的机器可读存储介质,例如图5中的存储器503,该计算机程序可由图5所示电子设备中的处理器501执行以实现上文中描述的地名匹配方法。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

相关技术
  • 地名匹配方法、装置、电子设备及机器可读存储介质
  • 匹配筛选方法、装置、电子设备和计算机可读存储介质
技术分类

06120112151683