一种地址匹配方法及装置与流程

文档序号:24406315发布日期:2021-03-26 17:17阅读:223来源:国知局
一种地址匹配方法及装置与流程

1.本发明涉及自然语言处理技术领域,更具体的说,是涉及一种地址匹配方法及装置。


背景技术:

2.当前随着互联网应用以及地理信息系统的普及,诸如电子地图和基于位置信息的在线服务逐渐被广泛地应用。在此基础上,出现了越来越多的基于地理位置服务的需求,其中就包括了地址匹配服务。
3.地名是特定空间位置上自然或人文地理实体的名称,地址是具有地名的自然或人为地理实体位置的结构化描述,地名地址是表达一个专业或社会经济信息与地理空间信息进行挂接的桥梁。地名地址数据广泛存在于政务数据、社会数据中,蕴藏着巨大的价值。地址匹配的作用就在于将这些数据成功挖掘出来,构建地址信息的数据库,从而为地址信息的实际应用带来方便。
4.当前主要的地址匹配的方法主要是基于规则的方法,如人工构建的规则、采用正则表达式等方法。这些方法可以在一定程度上解决地址匹配的问题,但基于规则的方法需要人工构建规则,而人工构建的规则常常不能覆盖数据当中的大多数模式。因此,基于规则的方法很难覆盖到测试场景当中的新地址,从而很难获得较高的准确率。


技术实现要素:

5.有鉴于此,本发明提供如下技术方案:
6.一种地址匹配方法,应用于预先训练好的地址匹配模型,方法包括:
7.接收待匹配地址;
8.确定所述待匹配地址的句子向量;
9.采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,其中,所述模板地址属于所述地址匹配模型;
10.基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配。
11.可选的,所述地址匹配模型的训练过程包括:
12.对训练数据进行关键词提取划分,得到关键词划分数据,所述训练数据为模板地址,所述关键词为表征行政区域的词汇;
13.基于所述关键词划分数据构建地址匹配模型。
14.可选的,所述基于所述关键词划分数据构建地址匹配模型,包括:
15.对所述模板地址的关键词划分数据进行分词处理,得到词语集合;
16.基于所述词语集合训练得到对应的词向量集合;
17.采用tf

idf模型对所述词向量集合中包含的词向量进行加权平均,得到所述关键词划分数据的句子向量。
18.可选的,所述确定所述待匹配地址的句子向量的过程,与所述地址匹配模型的训
练过程中确定所述模板地址的句子向量的过程相同。
19.可选的,所述对所述模板地址的关键词划分数据进行分词处理,得到词语集合,包括:
20.采用基于词典的分词算法或基于统计学习的分词算法对所述模板地址的关键词划分数据。
21.可选的,所述基于所述词语集合训练得到对应的词向量集合,包括:
22.基于所述词语集合,采用cbow模型或skip

gram模型训练得到对应的词向量集合。
23.可选的,所述待匹配地址和所述模板地址的句子向量均包括对应行政区地址的第一句子向量和对应具体地址的第二句子向量,则所述采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,包括:
24.采用余弦距离法分析法分别确定所述待匹配地址的第一句子向量和所述模板地址的第一句子向量的第一相似度,以及所述待匹配地址的第二句子向量和所述模板地址的第二句子向量的第二相似度。
25.可选的,所述预设阈值包括第一阈值、第二阈值和第三阈值,所述第一阈值大于所述第二阈值,则所述基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配,包括:
26.若所述第二相似度大于所述第一阈值,确定所述待匹配地址与所述模板地址匹配;
27.若所述第二相似度大于所述第二阈值并且小于或等于所述第一阈值,所述第一相似度大于所述第三阈值,确定所述待匹配地址与所述模板地址匹配;
28.若所述第二相似度小于或等于所述第二阈值,确定所述待匹配地址与所述模板地址不匹配。
29.一种地址匹配装置,应用于预先训练好的地址匹配模型,包括:
30.地址接收模块,用于接收待匹配地址;
31.向量确定模块,用于确定所述待匹配地址的句子向量;
32.相似度确定模块,用于采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,其中,所述模板地址属于所述地址匹配模型;
33.匹配确定模块,用于基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配。
34.可选的,所述地址匹配模型由训练装置训练得到,所述训练装置包括:
35.关键词划分模块,用于对训练数据进行关键词提取划分,得到关键词划分数据,所述训练数据为模板地址,所述关键词为表征行政区域的词汇;
36.模型构建模块,用于基于所述关键划分数据构建地址匹配模型。
37.经由上述的技术方案可知,与现有技术相比,本发明实施例公开了一种地址匹配方法及装置,应用于预先训练好的地址匹配模型,方法包括:接收待匹配地址;确定所述待匹配地址的句子向量;采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,其中,所述模板地址属于所述地址匹配模型;基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配。本实现方案可以利用一定数量的地址信息构建模型,并对模型进行训练,从而提取地址信息当中的特征;和人工构建规则的方
式相比,可以更有效的利用数据当中的信息,从而获得更高的匹配准确率;而且随着训练数据规模的不断增加,可以随时利用新的地址数据对模型进行调整,使其在实际应用环境中具有更好的适应性和实用性。
附图说明
38.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
39.图1为本发明实施例公开的地址匹配方法的流程图;
40.图2为本发明实施例公开的地址匹配模型的训练流程图;
41.图3为本发明实施例公开的构建地质匹配模型的流程图;
42.图4为skip

gram和cbow的模型实现原理图;
43.图5为本发明实施例公开的地址匹配方法的实现流程示意图;
44.图6为本发明实施例公开的一种地址匹配装置的结构示意图。
具体实施方式
45.为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下:
46.skip

gram:skip

gram算法就是在给出目标单词(中心单词)的情况下,预测它的上下文单词(除中心单词外窗口内的其他单词,窗口数值可根据场景设定,如窗口大小是2,也就是左右各两个单词),也称为连续跳跃元语法。
47.cbow模型:也称为连续词袋模型,是一个用于快速训练得到词向量的神经网络模型,它的核心原理是中心词的前r个词和后r个词来预测中心词。
48.tf

idf:即term frequency

inverse document frequency,是一种用于信息检索与数据挖掘的常用加权技术。
49.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.本申请实施例可以应用于电子设备,本申请对该电子设备的产品形式不做限定,可以包括但并不局限于智能手机、平板电脑、可穿戴设备、个人计算机(personal computer,pc)、上网本等,可以依据应用需求选择。
51.图1为本发明实施例公开的地址匹配方法的流程图,图1所示地址匹配方法应用于预先训练好的地址匹配模型,参见图1所示,地址匹配方法可以包括:
52.步骤101:接收待匹配地址。
53.待匹配地址可以是用户主动输入的地址信息,例如,用户在陌生的地方旅游,想要去某个地方,可能在电子地图应用中输入其对于这个地方所能够想到的模糊名称或地址,以使电子地图应用能够帮其匹配到最接近的地址。
54.步骤102:确定所述待匹配地址的句子向量。
55.由于常规基于规则的地址匹配实现方法中,人工构建的规则往往无法穷举能够涵盖所有情况的规则,因此本实现中,利用智能学习方法主动分析地址数据的特征信息,然后再利用学习的特征信息服务于地址匹配服务,能够有效提升地址匹配的准确度。
56.本实施例中,在获取待匹配地址后,会对其进行一些处理,得到待匹配地址的句子向量,将其作为与地址匹配模型中模板地址的比较主体,后续可根据比较结果,基于一定规则确定待匹配地址与模板地址是否匹配。至于具体如何对待匹配地址进行处理得到句子向量,将在后续实施例中详细记载,在此不再过多介绍。
57.步骤103:采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度。
58.其中,所述模板地址属于所述地址匹配模型。
59.前面已经介绍到,将句子向量作为待匹配地址和模板地址的比较主体,本实施例中,具体的实现方案是采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,即,计算待匹配地址的句子向量与模板地址的句子向量的夹角余弦值。
60.步骤104:基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配。
61.其中的预设规则和预设阈值并没有固定限制,具体可根据实际应用场景中的要求来设定,在后面的实施例中,将会介绍到具体的预设规则和预设阈值的示意性介绍。
62.本实施例所述地址匹配方法可以利用一定数量的地址信息构建模型,并对模型进行训练,从而提取地址信息当中的特征;和人工构建规则的方式相比,可以更有效的利用数据当中的信息,从而获得更高的匹配准确率;而且随着训练数据规模的不断增加,可以随时利用新的地址数据对模型进行调整,使其在实际应用环境中具有更好的适应性和实用性。
63.图2为本发明实施例公开的地址匹配模型的训练流程图,结合图2所示,上述实施例中,预先训练好的地址匹配模型的训练过程包括:
64.步骤201:对训练数据进行关键词提取划分,得到关键词划分数据,所述训练数据为模板地址,所述关键词为表征行政区域的词汇。
65.需要说明的是,为了保证模型的可靠度,训练数据的规模不宜特别小,以保证最初投入使用的地址匹配模型能够满足一定的地址匹配准确度。
66.本实施例中,基于关键词对待匹配地址进行划分的主要作用是对其进行预处理,将待匹配地址按行政区域关键字分为若干字段,后续再按字段分别进行匹配。
67.地址数据一般可以分为行政区地址和具体地址,例如对于“河北省保定市竞秀区朝阳北大街8888号”这个地址,其中“河北省保定市竞秀区”为行政区地址,“朝阳北大街8888号”为具体地址。本实现中,将所有的训练数据(即模板地址)都按照关键词(如省、市、县(区)、乡等)进行提取划分,划分为行政区地址和具体地址,后续对行政区地址和具体地址分别与模板地址进行匹配。
68.步骤202:基于所述关键词划分数据构建地址匹配模型。
69.得到关键词划分数据,可以对其进行进一步的处理,使得处理后的数据满足构建地址匹配模型的需要。
70.具体的,基于关键词划分数据构建地址匹配模型的一个示意性实现可以参见图3,
图3为本发明实施例公开的构建地质匹配模型的流程图,如图3所示,可以包括:
71.步骤301:对所述模板地址的关键词划分数据进行分词处理,得到词语集合。
72.具体的,可采用基于词典的分词算法或基于统计学习的分词算法对所述模板地址的关键词划分数据。
73.基于词典的分词算法也可以称为基于字符串匹配的分词算法,其特征为:按照预先设定好的策略,将待匹配的字符串和一个充分大的词典进行匹配,通过对于词条匹配的方法来实现单词,从而进行分词。由于基于匹配的方法需要通过字典来实现,而字典不可能包含所有的词,这样就会有某些词在词典中无法找到,进而无法匹配,这种词称为未登录词。未登录词的出现会影响到分词的准确率。因此在未登录词较多的场合也可以使用下述基于统计学习的分词方法。
74.基于统计学习的分词方法:此类分词方法通过人工标注的词性和统计学特征,根据观测到的数据对于模型进行训练。基于统计的分词法的基本原理是根据字符串在语料库中出现的统计频率来决定其是否构成词。词是字的组合,相邻的字同时出现的次数越多,就越有可能构成一个词。因此字与字相邻共现的频率或概率能够较好的反映它们成为词的可信度。在测试阶段,通过模型来预测各种分词结果的出现概率,取概率最大的结果作为分词结果。
75.步骤302:基于所述词语集合训练得到对应的词向量集合。
76.具体的,可基于所述词语集合,采用cbow模型或skip

gram模型训练得到对应的词向量集合。
77.对于词语集合,可以使用cbow模型或者是skip

gram模型进行训练,得到词向量的集合。这两种方法的共同点是,建立模型并且通过模型获取词向量,并且都可以分为输入层,映射层,以及输出层。图4为skip

gram和cbow的模型实现原理图,可结合图4理解本实现内容。
78.cbow模型的训练输入是某一个特征词的上下文相关的词对应的词向量,而输出就是这特定的一个词的词向量,即先验概率。skip

gram模型和cbow的思路是反过来的,即输入是特定的某一个词的词向量,而输出是特定词所对应的上下文的词向量,即后验概率。
79.步骤303:采用tf

idf模型对所述词向量集合中包含的词向量进行加权平均,得到所述关键词划分数据的句子向量。
80.本实施例中,使用tf

idf模型对于语料库进行建模。其中,tf

idf值用于词向量加权平均,得到句子向量。tf

idf值分别定义为:
[0081][0082][0083]
tf

idf=词频(tf)*逆文档频率(idf)
[0084]
需要说明的是,前述实施例中确定待匹配地址的句子向量的过程,与地址匹配模型的训练过程中确定模板地址的句子向量的过程相同。即对应的,也是先对待匹配数据进行关键词提取划分,得到关键词划分数据,然后对待匹配地址的关键词划分数据进行分词处理,得到词语集合;基于词语集合训练得到对应的词向量集合;采用tf

idf模型对词向量集合中包含的词向量进行加权平均,得到待匹配地址对应得到关键词划分数据的句子向
量。
[0085]
基于前述实施例,待匹配地址和模板地址的句子向量均包括对应行政区地址的第一句子向量和对应具体地址的第二句子向量,则所述采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,可以包括:采用余弦距离法分析法分别确定所述待匹配地址的第一句子向量和所述模板地址的第一句子向量的第一相似度s1,以及所述待匹配地址的第二句子向量和所述模板地址的第二句子向量的第二相似度s2。
[0086]
一个实现中,预设阈值可以包括第一阈值g1、第二阈值g2和第三阈值g3,所述第一阈值g1大于所述第二阈值g2,则所述基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配,可以包括:
[0087]
若所述第二相似度s2大于所述第一阈值g1(s2>g1),确定所述待匹配地址与所述模板地址匹配;
[0088]
若所述第二相似度s2大于所述第二阈值g2并且小于或等于所述第一阈值g1(g1>s2>g2),所述第一相似度s1大于所述第三阈值g3(s1>g3),确定所述待匹配地址与所述模板地址匹配;
[0089]
若所述第二相似度s2小于或等于所述第二阈值g2(s2≤g2),确定所述待匹配地址与所述模板地址不匹配。
[0090]
其中,第一阈值g1、第二阈值g2和第三阈值g3为超参数,可根据实际数据来做调整。
[0091]
本申请实施例所述地址匹配方法为基于文本相似度的地址匹配方法,通过使用统计学习方法得到待匹配地址的词向量和句子向量,提高了预测结果的准确度。相较于基于规则的地址匹配方法,本申请方案可提高地址匹配的自动化与准确率。
[0092]
图5为本发明实施例公开的地址匹配方法的实现流程示意图,可结合图5理解前述内容和下面介绍的一个示意性实例。
[0093]
如图5所示,本发明公开了一种基于文本相似度的地址匹配方法,整体流程为:对地址数据的关键词(如省、市、县(区))进行提取划分,并且保存划分后的数据,使用统计学习方法对于语料建模:对于需要处理的文本进行分词;对于词语集合使用skip

gram模型进行训练,得到词向量的集合,使用tf

idf模型对于语料库进行建模。对于每一对划分之后的地址,使用余弦距离分析其相似度,将相似度计算结果和预设置的阈值作比较,得出匹配结果。
[0094]
例如:
[0095]
地址a:安徽省长丰县罗塘乡壁城村李岗前村民组
[0096]
地址b:安徽省长丰县水湖镇金瓦村大金岗村民组
[0097]
首先按照s1对于地址按省市区关键词进行划分,
[0098]
对于地址a,划分得到结果:安徽省长丰县罗塘乡壁城村李岗前村民组;
[0099]
对于地址b,划分得到结果:安徽省长丰县水湖镇金瓦村大金岗村民组;
[0100]
对待测试的上述文本进行分词,对于地址a,得到:安徽省长丰县罗塘乡壁城村李岗前村民组;
[0101]
对于地址b,得到:安徽省长丰县水湖镇金瓦村大金岗村民组;
[0102]
得到地址a和地址b所对应的词向量集合;
[0103]
假设已经得到tf

idf模型,并且得到地址a和地址b所对应的句子向量;
[0104]
分别计算前后两部分(前述行政区地址和具体地址)所得到的向量夹角余弦值,假设得到的值s1=0.9,s2=0.4;
[0105]
假设取g1=0.8,g2=0.4,经过判断可以得到地址a与地址b不匹配。
[0106]
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0107]
上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了一种装置,下面给出具体的实施例进行详细说明。
[0108]
图6为本发明实施例公开的一种地址匹配装置的结构示意图,参见图6所示,地址匹配装置60可以包括:
[0109]
地址接收模块601,用于接收待匹配地址。
[0110]
向量确定模块602,用于确定所述待匹配地址的句子向量。
[0111]
相似度确定模块603,用于采用余弦距离分析方法确定所述待匹配地址的句子向量与模板地址对应的句子向量的相似度,其中,所述模板地址属于所述地址匹配模型。
[0112]
匹配确定模块604,用于基于预设规则和预设阈值确定所述待匹配地址与所述模板地址是否匹配。
[0113]
本实施例所述地址匹配装置可以利用一定数量的地址信息构建模型,并对模型进行训练,从而提取地址信息当中的特征;和人工构建规则的方式相比,可以更有效的利用数据当中的信息,从而获得更高的匹配准确率;而且随着训练数据规模的不断增加,可以随时利用新的地址数据对模型进行调整,使其在实际应用环境中具有更好的适应性和实用性。
[0114]
上述实施例中,地址匹配模型可由训练装置训练得到,所述训练装置可以包括:关键词划分模块,用于对训练数据进行关键词提取划分,得到关键词划分数据,所述训练数据为模板地址,所述关键词为表征行政区域的词汇;模型构建模块,用于基于所述关键划分数据构建地址匹配模型。
[0115]
上述各装置及各模块的具体实现可参见方法实施例中相关部分的内容介绍,在此不再重复赘述。
[0116]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0117]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在
包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0118]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd

rom、或技术领域内所公知的任意其它形式的存储介质中。
[0119]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1