CN111783419B - 地址相似度计算方法、装置、设备和存储介质 - Google Patents
地址相似度计算方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111783419B CN111783419B CN202010536316.8A CN202010536316A CN111783419B CN 111783419 B CN111783419 B CN 111783419B CN 202010536316 A CN202010536316 A CN 202010536316A CN 111783419 B CN111783419 B CN 111783419B
- Authority
- CN
- China
- Prior art keywords
- address
- vector
- word
- similarity calculation
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 46
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 43
- 239000013598 vector Substances 0.000 claims description 161
- 230000011218 segmentation Effects 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 31
- 238000013528 artificial neural network Methods 0.000 claims description 19
- 238000001914 filtration Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 14
- 238000012549 training Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 9
- 238000004140 cleaning Methods 0.000 claims description 6
- 230000014509 gene expression Effects 0.000 claims description 6
- 238000013145 classification model Methods 0.000 claims description 5
- 238000003062 neural network model Methods 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 230000006978 adaptation Effects 0.000 claims description 2
- 239000003550 marker Substances 0.000 description 6
- 238000011176 pooling Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000004880 explosion Methods 0.000 description 3
- 238000012015 optical character recognition Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了地址相似度计算方法、装置、设备和存储介质,针对地址匹配规则复杂,现有匹配算法的检索速度和准确性不高,地址匹配效率较低的问题,通过对输入地址信息以合适的初始向量进行表达,再通过基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量,最后通过计算该特征向量与标准地址数据集中的地址向量间的余弦距离或者L2距离的大小,得到与输入地址向量最为接近的已知地址向量,简化了地址匹配规则,提高了相同地址的首选准确度,进而提高了匹配算法的检索速度和准确性。
Description
技术领域
本发明属于地址匹配的设计领域,尤其涉及一种地址相似度计算方法、装置、设备和存储介质。
背景技术
常用的地址匹配算法是采用中文分词算法,设定词典规则抽取各种地名词,再结合分词特征计算地址之间的相似度。具体有以下三种情况:
1、基于词典分词算法
也称字符串匹配分词算法。该算法是按照一定的策略将待匹配的字符串和一个已建立好的“充分大的”词典中的词进行匹配,若找到某个词条,则说明匹配成功,识别了该词。常见的基于词典的分词算法分为以下几种:正向最大匹配法、逆向最大匹配法和双向匹配分词法等。
2、基于语法和规则的分词算法
其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来进行词性标注,以解决分词歧义现象。因为现有的语法知识、句法规则十分笼统、复杂,基于语法和规则的分词法所能达到的精确度远远还不能令人满意,目前这种分词系统还处在试验阶段。
3、基于统计的分词算法
这类目前常用的是算法是HMM、CRF、SVM、深度学习等算法,比如stanford、Hanlp分词工具是基于CRF算法。以CRF为例,基本思路是对汉字进行标注训练,不仅考虑了词语出现的频率,还考虑上下文,具备较好的学习能力,因此其对歧义词和未登录词的识别都具有良好的效果。
地址匹配,是将文字性的描述地址与其空间的地理位置坐标建立起对应关系的过程,其目的是要根据用户输入的待检索地址快速查找到匹配的地址,并以在线服务的形式返回用户检索结果。在电子地图领域中,地址检索、查询服务是网络地图在线服务的重要功能。通过地址匹配将用户输入的待匹配地址转化为地理位置,以便于在电子地图上显示该待匹配地址,方便用户了解该待匹配地址所处的地理位置。
目前,地址匹配的具体实现如下:首先,对用户输入的文字性描述地址进行分词;其次,针对每一个分词,将该分词与分词库中预存的分词进行匹配,得到与该分词匹配的至少一个预存分词;再其次,按照各分词在待匹配地址中的语序,对各分词对应的预存分词进行组合,得到多个组合;将各种组合结果展示给用户以便用户进行选择,根据用户选择的组合结果进行地址匹配。
传统的地址匹配方法通常采用基于关键词的精确或模糊匹配方法,这对于大规模或大范围的地名地址数据,匹配速度慢,很难满足电子地图在线服务的需要,再加上歧义词和未登录词较多,导致匹配的准确性比较低,匹配结果多种多样且往往不是用户所需要的结果。
发明内容
本发明的目的是提供一种地址相似度计算方法、装置、设备和存储介质,以解决在地址信息数据量较大时,现有地址匹配技术中对未登录词匹配成功率较低的问题;以及地址匹配规则复杂,现有匹配算法的检索速度和准确性不高,地址匹配效率较低的问题。
为解决上述问题,本发明的技术方案为:
一种地址相似度计算方法,包括:
S1:提取输入地址的文本信息,对所述文本信息进行过滤及分词,得到多个候选词语;
S2:将多个所述候选词语输入地址向量生成模型,得到所述输入地址的初始地址向量;
S3:将所述初始地址向量输入基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量;
S4:计算所述特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与所述输入地址相近的已知地址向量。
根据本发明一实施例,所述步骤S1进一步包括:
S11:采用正则表达式和构建地址词典的方式对所述输入地址的文本信息进行过滤;
S12:将过滤后的文本信息输入分词系统中,对所述文本信息进行分析,得到多个候选词语;
S13:判断所述文本信息中是否存在新词,所述新词为不属于分词系统中的词语;
S14:若存在新词,则调用标准地址数据集,根据地址置信度及对应地址经度、纬度的重复数量,对所述文本信息重新进行语料划分。
根据本发明一实施例,所述步骤S13进一步包括:
根据字符组合的信息熵越高、字符间的共现频率越高,形成新词的概率越大的原则,通过计算所述候选词语的字符组合的信息熵及字符间的共现频率,判断是否为新词。
根据本发明一实施例,所述步骤S2进一步包括:
基于skip-gram模型对多个所述候选词语转化成词向量并进行词向量叠加,得到具有词间关联关系的向量;
采用average-pooling算法对所述具有词间关联关系的向量进行下采样,提取特征,得到所述输入地址的初始地址向量。
根据本发明一实施例,所述步骤S3进一步包括:
创建孪生神经网络模型及地址训练数据集,所述地址训练数据集包括多个相同的地址及多个不同的地址;
在所述孪生神经网络模型中定义三元损失函数:
L=max(||addressanchor-addresspositive||-||addressanchor-addressnegative||+θ,0)其中,addressanchor与addresspositive为两个相似的地址,||addressanchor-addresspositive||为这两个地址间的欧式距离;addressanchor与addressnegative为两个不同的地址,||addressanchor-addressnegative||为这两个地址间的欧式距离;θ表示||addressanchor-addressnegative||与||addressanchor-addresspositive||之间的差值;
采用梯度下降算法,训练所述孪生神经网络,使||addressanchor-addresspositive||的值趋于0;
当将所述初始地址向量输入所述孪生神经网络后,输出与所述初始地址向量最相似的特征向量。
根据本发明一实施例,所述步骤S1之前还包括:
获取快递物流领域的地址信息,并获取地址信息中相关的语料;
对所述地址信息相关的语料进行数据清洗,得到清洗后的语料;
基于所述清洗后的语料,生成多个分类模型,共同组成分词系统。
根据本发明一实施例,所述步骤S1之前还包括:
建立地址中的固定区域信息与地址向量生成模型之间的对应关系及调用关系。
一种地址相似度计算装置,包括:
输入地址预处理模块,用于提取输入地址的文本信息,对所述文本信息进行过滤及分词,得到多个候选词语;
初始向量形成模块,用于将多个所述候选词语输入地址向量生成模型,得到所述输入地址的初始地址向量;
特征向量提取模块,用于将所述初始地址向量输入基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量;
相似地址获取模块,用于计算所述特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与所述输入地址相近的已知地址向量。
一种地址相似度计算设备,所述地址相似度计算设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述地址相似度计算设备执行本发明一实施例中的地址相似度计算方法。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现本发明一实施例中的地址相似度计算方法。
本发明由于采用以上技术方案,使其与现有技术相比具有以下的优点和积极效果:
1)本发明一实施例中的地址相似度计算方法,针对现有地址匹配技术中对未登录词匹配成功率较低的问题,通过在计算地址相似度之前,对输入地址的文本信息进行过滤和分词处理,在分词时通过计算字符组合的信息熵及字符间的共现频率确定新词,提高了对输入地址的分词准确程度,从而提高地址匹配成功率。
2)本发明一实施例中的地址相似度计算方法,针对地址匹配规则复杂,现有匹配算法的检索速度和准确性不高,地址匹配效率较低的问题,通过对输入地址信息以合适的初始向量进行表达,再通过基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量,最后通过计算该特征向量与标准地址数据集中的地址向量间的余弦距离或者L2距离的大小,得到与输入地址向量最为接近的已知地址向量,简化了地址匹配规则,提高了相同地址的首选准确度,进而提高了匹配算法的检索速度和准确性。
3)本发明一实施例中的地址相似度计算方法,通过skip-gram统计模型对多个词向量进行叠加,得到具有词间关联关系的向量,采用average-pooling算法对具有词间关联关系的向量进行下采样,提取特征,使该地址向量的特征信息在减少维度的同时,更有利特征信息传递到下一个模块(孪生神经网络)进行特征提取。
附图说明
图1为本发明一实施例中的地址相似度计算方法流图;
图2为本发明一实施例中的地址相似度计算装置框图;
图3为本发明一实施例中的地址相似度计算设备示意图。
具体实施方式
以下结合附图和具体实施例对本发明提出的一种地址相似度计算方法、装置、设备和存储介质作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。
实施例一
本实施例提供一种地址相似度计算方法,请参看图1,该方法包括:
S1:提取输入地址的文本信息,对所述文本信息进行过滤及分词,得到多个候选词语;
S2:将多个所述候选词语输入地址向量生成模型,得到所述输入地址的初始地址向量;
S3:将所述初始地址向量输入基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量;
S4:计算所述特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与所述输入地址相近的已知地址向量。
通过上述地址相似度计算方法可解决在地址信息数据量较大时,现有地址匹配技术中对未登录词匹配成功率较低的问题;以及地址匹配规则复杂,现有匹配算法的检索速度和准确性不高,地址匹配效率较低的问题。提高对输入地址的分词准确程度及相同地址的首选准确度,进而提高了匹配算法的检索速度和准确性。
具体的,在步骤S1之前,服务端需确定好分词系统。服务端获取快递物流领域的地址信息,并获取地址信息中相关的语料;
例如,服务端先收集大量快递物流领域的地址信息,如省、市、区、街道、门牌号、公司、小区信息。
服务端对地址信息相关的语料进行数据清洗,得到清洗后的语料;
具体的,进行数据清洗,主要是高相关数据去重,低方差数据清洗,调整数据均衡分布,丢弃过长过短语料,高相似性语料清洗等操作。具体处理过程如下:
高相关数据去重:对于给定的数据集,先选择一条文本与剩余的样本集合进行两两相似度估计,剔除与文本数据相似度非常高的样本,循环处理。采用余弦相似度公式计算两两相似度,具体公式如下:
其中,Xi和Yi分别表示两个向量。一个向量空间中两个向量夹角间的余弦值作为衡量两个个体之间差异的大小,余弦值接近1,夹角趋于0,表明两个向量越相似,余弦值接近于0,夹角趋于90度,表明两个向量越不相似。
低方差数据剔除:对于给定的数据集经过分层聚类后进行降采样抽取,避免数据分布不平衡。
剔除文本数据长度偏离样本集分布的异常数据:统计语料长度分布特性,剔除偏离统计分布的一头一尾的样本(过长和过短的文本)。
服务端清洗后的语料,生成多个分类模型,共同组成分词系统。该分类模型分为行政区划模型及地名模型。其中行政区划模型包括省、市、县、街区、乡、镇、村、社区等信息,地名模型包括道路街巷地名、片区地名、自然村地名、小区地名、建筑物地名、其他自然地名等信息。
步骤S1:提取输入地址的文本信息,对所述文本信息进行过滤及分词,得到多个候选词语。
由于输入地址通常是由人手写结合OCR(optical character recognition,光学字符识别)识别扫描得出,会有大量的不标准地址用词和错字干扰,因此,需对输入地址的文本信息进行预处理,如过滤、分词。
对地址文本信息的过滤可以使用正则表达式和构建地址词典的方式进行。地址过滤包括去除各种括号内异常内容,对超过6位以上的数字进行过滤,对人名进行过滤,对重复词进行过滤。这主要涉及基本正则手法,这里就不细说了。
对地址文件信息进行分词,可将该地址文本信息导入分词系统,由分词系统中的行政区划模型及地名模型对该地址文本信息进行分词,并输出分离后的词向量。
由于考虑到一个省包含的地址信息较多,通常有上亿的记录数,无法对每条记录的每个地址元素都登记到分词系统中,对于未登录到分词系统中的未识别词(也就是新词),本实施例通过某些算法实现对新词的确定。
对于新词的发现除了使用规则提取的方法外还可以使用下面的两个思路进行:
1.词语的左右邻字要足够丰富。如果一个字符组合可以成词,那么它应当出现在丰富的语境当中,也就是说该词拥有潜在丰富的左右邻字。信息熵是对信息量多少的度量,信息熵越高,表示信息量越丰富、不确定性越大。因此字符组合的左右邻字的丰富程度,可以用信息熵(Entropy)来表示。例如,在一份说明文档中出现的“爆仓识别”四字,该词前后会跟随很多不同的单字,如在爆仓识别之前会有诸如“学习、应用、在、对”等字词,在爆仓识别之后会有诸如“技术、算法、过程、结果、中”等字词。所以这里可以认为“爆仓识别”是新词。又如“韵达快”后面只会跟随“递”或“运”这两个字,所以显然“韵达快”不是新词。通过该思路我们可以挖掘出一些不在分词系统中的特殊地址名词。
2.词语的内部凝聚程度要高。我们可以将字符的共现频率当做一个新词出现的衡量指标。例如“文本向量”和“的向量”这两种组合,“文本向量”在文档中出现了100次,而“的向量”出现了150次,如果单从频率来看,“的向量”更有可能被认为是一个新词。但是经过统计在文本语料集中,P(文本)和P(向量)的同时出现频率,发现两者同时出现的频率为0.01,但是P(的)和P(向量)两者同时出现的频率为0.0001,因此我们就不应该将“的向量”看做一个新词。但是该方法也有缺陷,如该方法会将“韵达快”和“达快运”这两个词当做新词进行发现,这显然也是不合适的。所以需要将上述两种算法进行结合来做新词发现。
当然在具体的实践中,地址文本信息中的新词发现不同于以往从大量文本中发现新词的过程,对于输入的地址文本信息,需要依照其对应高德地图或百度地图的地址置信度及其对应的地址经、纬度的重复数量进行语料划分,这样提取出的新词才能更为准确和有效。这是因为一方面地址的输入是由人手写结合OCR识别扫描得出,会有大量的不标准地址用词和错字干扰;另一方面是不同经纬度之间的新词发现会产生干扰。
基于上述思路,本实施例在对输入的地址文本信息进行分词时,首先将过滤后的文本信息输入分词系统中,对文本信息进行分析,得到多个候选词语;
判断文本信息中是否存在新词,该新词为不属于分词系统中的词语;
若存在新词,则调用标准地址数据集,根据地址置信度及对应地址经度、纬度的重复数量,对该文本信息重新进行语料划分。
在对新词进行判断的时候,遵循该词的字符组合的信息熵越高、字符间的共现频率越高,形成新词的概率越大的原则,通过计算候选词语的字符组合的信息熵及字符间的共现频率,判断是否为新词。
其中,标准地址数据集为根据服务端获取的地址信息,采用标准地址模型建立的地址库。该标准地址模型中的地名地址编码规则为:
地名地址中自然地名的描述用标志性自然地物名称直接表示;人文地名分三段描述,第一段为行政区域地名,由四级行政区域地名的组合构成,第二段为自然村或街巷/小区名;第三段为兴趣点名/标志物名/门(楼)址。编码结构如下所示:
××市××区××街道××社区+××街巷/小区名+门(楼)址/标志物/兴趣点
第一段:行政区域地名(市+区/县+街道/乡镇+社区/行政村);
第二段:街巷/小区名;
第三段:门(楼)址/标志物/兴趣点。
同时,地名地址的组合描述按以下六种规则进行:
1)行政区域地名/街巷名/门(楼)址组合示例:
××市××区××街道××社区××路××号
第一段:行政区域地名第二段:街巷名第三段:门(楼)址。
2)行政区域地名/街巷名/标志物名组合示例:
××市××区××街道××社区××路××大厦
第一段:行政区域地名第二段:街巷名第三段:标志物名。
3)行政区域地名/街巷名/兴趣点名组合示例:
××市××区××街道××社区××路××餐厅
第一段:行政区域地名第二段:街巷名第三段:兴趣点名。
4)行政区域地名/小区名/楼址组合示例:
××市××区××街道××社区××小区××号楼(栋)
第一段:行政区域地名第二段:小区名第三段:门(楼)址。
5)行政区域地名/小区名/标志物名组合示例:
××市××区××街道××社区××小区××大厦
第一段:行政区域地名第二段:小区名第三段:标志物名。
6)行政区域地名/小区名/兴趣点名组合示例:
××市××区××街道××社区××小区××餐厅
第一段:行政区域地名第二段:小区名第三段:兴趣点。
在步骤S1之后及步骤S2之前,需建立地址中的固定区域信息与地址向量生成模型之间的对应关系及调用关系。
这里的地址中的固定区域信息表示行政区域地名,而地址向量生成模型为按照地址的固定区域信息中行政区域地名的顺序,如××市××区××街道××社区,对多个词向量进行排序组合,使生成的地址向量符合通用的地址表达方式。考虑到有些省或市中没有街道或社区的划分,针对这样的省或市可设计专门的地址向量生成模型来匹配地址信息。另外,也可以按省或市设计多个地址向量生成模型,如当输入的词向量中出现上海市时,就调用上海市的地址向量生成模型;当输入的词向量中出现浙江省时,就调用浙江省的地址向量生成模型。
步骤S2:将多个候选词语输入地址向量生成模型,得到该输入地址的初始地址向量。
地址文本数据不同于图像数据集,也不能直接等同于2018年以后我们常见的自然语言处理任务的解决办法,地址信息的表达不会受到自然语言的文本先验知识和词位置信息的影响(如BERT/XLNET类对四十亿词文本进行预训练模型),所以这里只需选用一种能够对词间关联信息进行表达的模型,再对词向量进行叠加后就可以作为地址向量的原始输入。词向量的叠加意味着该地址文本向量在空间中最终的向量方向,足够体现地址和地址之间的区分度。为了方便在这里选择了Fasttext库中实现的skip-gram模型进行词向量的计算,作为地址向量生成模型中的一部分。
Skip-Gram是给定inputword来预测上下文。Skip-Gram模型分为了两个部分,第一部分为建立模型,第二部分是通过模型获取嵌入词向量。Skip-Gram的整个建模过程实际上与自编码器(auto-encoder)的思想很相似,即先基于训练数据构建一个神经网络,当这个模型训练好以后,我们并不会用这个训练好的模型处理新的任务,我们真正需要的是这个模型通过训练数据所学得的参数,例如隐层的权重矩阵。
本实施例在skip-gram模型对多个候选词语转化成词向量并进行词向量叠加,得到具有词间关联关系的向量;然后,采用average-pooling算法对该具有词间关联关系的向量进行下采样,提取特征,得到该输入地址的初始特征向量。
为什么要采用average-pooling算法对向量进行特征提取呢?
这是因为在卷积神经网络中,一般在卷积层后面都会接一个池化操作,该池化操作分为max-pooling算法及average-pooling算法。根据相关理论,特征提取的误差主要来自两个方面:(1)邻域大小受限造成的估计值方差增大;(2)卷积层参数误差造成估计均值的偏移。一般来说,average-pooling能减小第一种误差;而max-pooling能减小第二种误差,更多的保留纹理信息。average-pooling更强调对整体特征信息进行一层下采样,在减少参数维度的贡献上更大一点,更多的体现在信息的完整传递这个维度上,在一个很大很有代表性的模型中,比如说DenseNet中的模块之间的连接大多采用average-pooling,在减少维度的同时,更有利信息传递到下一个模块进行特征提取。
具体到本发明,提取经skip-gram模型计算得到的地址向量的特征,希望能够完整的保留该向量的特征信息,为后续的地址相似度计算提供好的基础。因此,本发明比较适合采用average-pooling算法进行特征提取。
步骤S3:将初始地址向量输入基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到初始地址向量的特征向量。
孪生神经网络的目标是寻找两个可比较对象的相似程度(例如,签名验证、人脸识别等)。这个网络有两个相同的子网络,两个子网络有相同的参数和权重。在子网络中输入一个地址对象,然后依次馈送到卷积层、池化层和全连接层,最后输出一个特征向量。两个完全相同的子网络对两个不同的地址进行计算,然后比较两者的结果。因此,孪生神经网络的参数决定了地址的编码表达。
本实施例中,我们希望通过模型的训练学习,使两个相似的地址,其通过模型表达的函数值很小;并且使两个不同的地址,其通过模型表达的函数值很大。
为了学习神经网络的参数,以获得一个优良的地址编码。本实施例创建了孪生神经网络模型及地址训练数据集,该地址训练数据集包括多个相同或相似的地址及多个不同的地址;并定义了应用梯度下降算法的三元损失函数:
L=max(||addressanchor-addresspositive||-||addressanchor-addressnegative||+θ,0)其中,addressanchor与addresspositive为两个相似的地址,||addressanchor-addresspositive||为这两个地址间的欧式距离;addressanchor与addressnegative为两个不同的地址,||addressanchor-addressnegative||为这两个地址间的欧式距离;θ表示||addressanchor-addressnegative||与||addressanchor-addresspositive||之间的差值;
采用梯度下降算法,训练孪生神经网络,使||addressanchor-addresspositive||的值趋于0;
将该神经网络训练好之后,当将地址向量输入孪生神经网络后,就可输出与该地址向量最相似的特征向量。
步骤S4:计算所述特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与所述输入地址相近的已知地址向量。
得到输入地址的特征向量后,就可通过地址相似度算法匹配标准地址数据集中的已知地址。那么如何进行匹配呢?可遍历标准地址数据集中的地址向量,计算每个地址向量与输入地址的特征向量之间的余弦距离或L2距离来确定两者的相似度。
计算两向量间的余弦距离请参看上述采用余弦相似度公式计算两两相似度的描述,在此不再赘述。
其中,计算两向量间的L2距离是指计算两向量间的欧式距离(对应L2范数)。如向量addressanchor与向量addresspositive之间的欧式距离可表示为:||addressanchor-addresspositive||,表示addressanchor中各个元素与向量addresspositive中各元素之差的平方和的1/2次方。
本发明针对地址匹配规则复杂,现有匹配算法的检索速度和准确性不高,地址匹配效率较低的问题,通过对输入地址信息以合适的初始向量进行表达,再通过基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量,最后通过计算该特征向量与标准地址数据集中的地址向量间的余弦距离或者L2距离的大小,得到与输入地址向量最为接近的已知地址向量,简化了地址匹配规则,提高了相同地址的首选准确度,进而提高了匹配算法的检索速度和准确性。
实施例二
上述实施例一对本发明实施例中地址相似度计算方法进行了描述,下面对本发明实施例中地址相似度计算装置进行描述,请参看图2,本发明实施例中地址相似度计算装置包括:
输入地址预处理模块1,用于提取输入地址的文本信息,对该文本信息进行过滤及分词,得到多个候选词语;
初始向量形成模块2,用于将多个候选词语输入地址向量生成模型,得到输入地址的初始地址向量;
特征向量提取模块3,用于将初始地址向量输入基于三元损失的深度适配网络模型中,得到该初始地址向量的特征向量;
相似地址获取模块4,用于计算该特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与输入地址相近的已知地址向量。
其中,输入地址预处理模块1包括:
文本过滤模块,采用正则表达式和构建地址词典的方式对所述输入地址的文本信息进行过滤;
分词模块,将过滤后的文本信息输入分词系统中,对文本信息进行分析,得到多个候选词语;
新词判断模块,判断该文本信息中是否存在新词,该新词为不属于分词系统中的词语;若存在新词,则调用标准地址数据集,根据地址置信度及对应地址经度、纬度的重复数量,对文本信息重新进行语料划分。
初始向量形成模块2包括:
词向量模块,基于skip-gram模型对多个所述候选词语转化成词向量并进行词向量叠加,得到具有词间关联关系的向量;
向量处理模块,采用average-pooling算法对所述具有词间关联关系的向量进行下采样,提取特征,得到所述输入地址的初始地址向量。
上述地址相似度计算装置中的各个模块与实施例一中的各个步骤一一对应,其实现功能及方法也与实施一中的方法相似,在此不再赘述。
实施例三
上述实施例二从模块化功能实体的角度对本发明实施例中地址相似度计算装置进行详细描述,下面从硬件处理的角度对本发明实施例中地址相似度计算设备进行详细描述。
请参看图3,该地址相似度计算设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对地址相似度计算设备500中的一系列指令操作。
进一步地,处理器510可以设置为与存储介质530通信,在地址相似度计算设备500上执行存储介质530中的一系列指令操作。
地址相似度计算设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作系统531,例如Windows Serve、Vista等等。
本领域技术人员可以理解,图3示出的地址相似度计算设备结构并不构成对地址相似度计算设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质。该计算机可读存储介质中存储有指令,当该指令在计算机上运行时,使得计算机执行实施例一中的地址相似度计算方法的步骤。
实施例二中的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-only memory,ROM)、随机存取存储器(Random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置及设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式。即使对本发明作出各种变化,倘若这些变化属于本发明权利要求及其等同技术的范围之内,则仍落入在本发明的保护范围之中。
Claims (8)
1.一种地址相似度计算方法,其特征在于,包括:
S1:提取输入地址的文本信息,对所述文本信息进行过滤及分词,得到多个候选词语;
S2:将多个所述候选词语输入地址向量生成模型,得到所述输入地址的初始地址向量;
S3:将所述初始地址向量输入基于孪生神经网络的地址相似度计算模型,结合三元损失函数的梯度下降算法,得到所述初始地址向量的特征向量;
S4:计算所述特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与所述输入地址相近的已知地址向量;
其中,所述步骤S1进一步包括:
S11:采用正则表达式和构建地址词典的方式对所述输入地址的文本信息进行过滤;
S12:将过滤后的文本信息输入分词系统中,对所述文本信息进行分析,得到多个候选词语;
S13:根据字符组合的信息熵越高、字符间的共现频率越高,形成新词的概率越大的原则,通过计算所述候选词语的字符组合的信息熵及字符间的共现频率,判断是否为新词;所述新词为不属于分词系统中的词语;
S14:若存在新词,则调用标准地址数据集,根据地址置信度及对应地址经度、纬度的重复数量,对所述文本信息重新进行分词。
2.如权利要求1所述的地址相似度计算方法,其特征在于,所述步骤S2进一步包括:
基于skip-gram模型对多个所述候选词语转化成词向量并进行词向量叠加,得到具有词间关联关系的向量;
采用average-pooling算法对所述具有词间关联关系的向量进行下采样,提取特征,得到所述输入地址的初始地址向量。
3.如权利要求1所述的地址相似度计算方法,其特征在于,所述步骤S3进一步包括:
创建孪生神经网络模型及地址训练数据集,所述地址训练数据集包括多个相同的地址及多个不同的地址;
在所述孪生神经网络模型中定义三元损失函数:
L=max(||addressanchor-addresspositive||-||addressanchor-addressnegative||+θ,0)
其中,addressanchor与addresspositive为两个相似的地址,||addressanchor-addresspositive||为这两个地址间的欧式距离;addressanchor与addressnegative为两个不同的地址,||addressanchor-addressnegative||为这两个地址间的欧式距离;θ表示||addressanchor-addressnegative||与||addressanchor-addresspositive||之间的差值;
采用梯度下降算法,训练所述孪生神经网络,使||addressanchor-addresspositive||的值趋于0;
当将所述初始地址向量输入所述孪生神经网络后,输出与所述初始地址向量最相似的特征向量。
4.如权利要求1至3中任意一项所述的地址相似度计算方法,其特征在于,所述步骤S1之前还包括:
获取快递物流领域的地址信息,并获取地址信息中相关的语料;
对所述地址信息相关的语料进行数据清洗,得到清洗后的语料;
基于所述清洗后的语料,生成多个分类模型,共同组成分词系统。
5.如权利要求1至3中任意一项所述的地址相似度计算方法,其特征在于,所述步骤S1之后及所述步骤S2之前还包括:
建立地址中的固定区域信息与地址向量生成模型之间的对应关系及调用关系。
6.一种地址相似度计算装置,实现如权利要求1至5中任意一项所述的地址相似度计算方法,其特征在于,包括:
输入地址预处理模块,用于提取输入地址的文本信息,对所述文本信息进行过滤及分词,得到多个候选词语;
初始向量形成模块,用于将多个所述候选词语输入地址向量生成模型,得到所述输入地址的初始地址向量;
特征向量提取模块,用于将所述初始地址向量输入基于三元损失的深度适配网络模型中,得到所述初始地址向量的特征向量;
相似地址获取模块,用于计算所述特征向量与标准地址数据集中的地址向量之间的余弦距离或L2距离,得到与所述输入地址相近的已知地址向量。
7.一种地址相似度计算设备,其特征在于,所述地址相似度计算设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述地址相似度计算设备执行如权利要求1-5中任意一项所述的地址相似度计算方法。
8.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的地址相似度计算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010536316.8A CN111783419B (zh) | 2020-06-12 | 2020-06-12 | 地址相似度计算方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010536316.8A CN111783419B (zh) | 2020-06-12 | 2020-06-12 | 地址相似度计算方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111783419A CN111783419A (zh) | 2020-10-16 |
CN111783419B true CN111783419B (zh) | 2024-02-27 |
Family
ID=72756335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010536316.8A Active CN111783419B (zh) | 2020-06-12 | 2020-06-12 | 地址相似度计算方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111783419B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113779370B (zh) * | 2020-11-03 | 2023-09-26 | 北京京东振世信息技术有限公司 | 一种地址检索方法和装置 |
CN112529390A (zh) * | 2020-12-02 | 2021-03-19 | 平安医疗健康管理股份有限公司 | 任务分配方法、装置、计算机设备和存储介质 |
CN112581252A (zh) * | 2020-12-03 | 2021-03-30 | 信用生活(广州)智能科技有限公司 | 融合多维相似度与规则集合的地址模糊匹配方法及系统 |
CN112559658B (zh) * | 2020-12-08 | 2022-12-30 | 中国科学技术大学 | 一种地址匹配方法及装置 |
CN112579919B (zh) * | 2020-12-09 | 2023-04-21 | 小红书科技有限公司 | 数据处理方法、装置及电子设备 |
CN112597755A (zh) * | 2020-12-29 | 2021-04-02 | 杭州拼便宜网络科技有限公司 | 一种地理位置信息生成方法、装置、电子设备及存储介质 |
CN112347221A (zh) * | 2021-01-08 | 2021-02-09 | 北京安泰伟奥信息技术有限公司 | 一种房屋地址相似度分析方法及装置 |
CN112883721B (zh) * | 2021-01-14 | 2024-01-19 | 科技日报社 | 基于bert预训练模型的新词识别方法和装置 |
CN113076752A (zh) * | 2021-03-26 | 2021-07-06 | 中国联合网络通信集团有限公司 | 识别地址的方法和装置 |
CN113065057B (zh) * | 2021-04-14 | 2022-12-02 | 上海浦东发展银行股份有限公司 | 一种数据信息真实性校验方法、装置、设备及存储介质 |
CN113326267B (zh) * | 2021-06-24 | 2023-08-08 | 长三角信息智能创新研究院 | 基于倒排索引和神经网络算法的地址匹配方法 |
CN113589993A (zh) * | 2021-07-16 | 2021-11-02 | 青岛海尔科技有限公司 | 收货地址生成方法、装置、电子设备及存储介质 |
CN113515677B (zh) * | 2021-07-22 | 2023-10-27 | 中移(杭州)信息技术有限公司 | 地址匹配方法、装置及计算机可读存储介质 |
CN113779197B (zh) * | 2021-09-09 | 2023-07-04 | 中国电子科技集团公司信息科学研究院 | 一种数据集搜索方法、装置、存储介质及终端 |
CN113869052B (zh) * | 2021-09-26 | 2023-05-05 | 杭州中房信息科技有限公司 | 基于ai的房屋地址匹配方法、存储介质及设备 |
CN114693396A (zh) * | 2022-02-28 | 2022-07-01 | 广州华多网络科技有限公司 | 地址信息匹配方法及其装置、设备、介质、产品 |
CN116402050B (zh) * | 2022-12-26 | 2023-11-10 | 北京码牛科技股份有限公司 | 一种地址归一化及补充方法、装置、电子设备及存储介质 |
CN117172792A (zh) * | 2023-11-02 | 2023-12-05 | 赞塔(杭州)科技有限公司 | 客户信息管理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018040503A1 (zh) * | 2016-08-30 | 2018-03-08 | 北京百度网讯科技有限公司 | 获取搜索结果的方法和装置 |
CN108876545A (zh) * | 2018-06-22 | 2018-11-23 | 北京小米移动软件有限公司 | 订单识别方法、装置和可读存储介质 |
CN108920457A (zh) * | 2018-06-15 | 2018-11-30 | 腾讯大地通途(北京)科技有限公司 | 地址识别方法和装置及存储介质 |
CN109543009A (zh) * | 2018-10-17 | 2019-03-29 | 龙马智芯(珠海横琴)科技有限公司 | 文本相似度评估系统及文本相似度评估方法 |
CN110019575A (zh) * | 2017-08-04 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 对地理地址进行标准化的方法和装置 |
CN110413988A (zh) * | 2019-06-17 | 2019-11-05 | 平安科技(深圳)有限公司 | 文本信息匹配度量的方法、装置、服务器及存储介质 |
WO2020103783A1 (zh) * | 2018-11-19 | 2020-05-28 | 阿里巴巴集团控股有限公司 | 地址文本相似度确定方法、地址搜索方法、装置和设备 |
-
2020
- 2020-06-12 CN CN202010536316.8A patent/CN111783419B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018040503A1 (zh) * | 2016-08-30 | 2018-03-08 | 北京百度网讯科技有限公司 | 获取搜索结果的方法和装置 |
CN110019575A (zh) * | 2017-08-04 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 对地理地址进行标准化的方法和装置 |
CN108920457A (zh) * | 2018-06-15 | 2018-11-30 | 腾讯大地通途(北京)科技有限公司 | 地址识别方法和装置及存储介质 |
CN108876545A (zh) * | 2018-06-22 | 2018-11-23 | 北京小米移动软件有限公司 | 订单识别方法、装置和可读存储介质 |
CN109543009A (zh) * | 2018-10-17 | 2019-03-29 | 龙马智芯(珠海横琴)科技有限公司 | 文本相似度评估系统及文本相似度评估方法 |
WO2020103783A1 (zh) * | 2018-11-19 | 2020-05-28 | 阿里巴巴集团控股有限公司 | 地址文本相似度确定方法、地址搜索方法、装置和设备 |
CN110413988A (zh) * | 2019-06-17 | 2019-11-05 | 平安科技(深圳)有限公司 | 文本信息匹配度量的方法、装置、服务器及存储介质 |
Non-Patent Citations (5)
Title |
---|
A Sentence Similarity Estimation Method Based on Improved Siamese Network;Ziming Chi ET AL;Journal of Intelligent Learning Systems and Applications;第10卷(第4期);121-134 * |
Sentence-BERT:Sentence Embeddings using Siamese BERT-networks;Nils Reimers ET AL;arXiv;1-11 * |
中文短文本语义相似度计算方法研究;马付玉;中国优秀硕士学位论文全文数据库 信息科技辑(第1期);I138-2722 * |
基于深度学习的中文句子相似度计算研究;李寒;中国优秀硕士学位论文全文数据库 信息科技辑(第1期);I138-2579 * |
基于统计和规则的中文地址分词系统设计与实现;袁向铎;硕士论文;1-64 * |
Also Published As
Publication number | Publication date |
---|---|
CN111783419A (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111783419B (zh) | 地址相似度计算方法、装置、设备和存储介质 | |
CN111353030B (zh) | 基于旅游领域知识图谱的知识问答检索方法及装置 | |
CN107463658B (zh) | 文本分类方法及装置 | |
CN106649490B (zh) | 一种基于深度特征的图像检索方法及装置 | |
CN113449111B (zh) | 基于时空语义知识迁移的社会治理热点话题自动识别方法 | |
CN109492027B (zh) | 一种基于弱可信数据的跨社群潜在人物关系分析方法 | |
CN112559658B (zh) | 一种地址匹配方法及装置 | |
CN111950280A (zh) | 地址匹配方法及装置 | |
CN111090994A (zh) | 一种面向中文网络论坛文本的事件地点归属省份识别方法 | |
CN114461890A (zh) | 分层多模态的知识产权搜索引擎方法与系统 | |
CN113779429A (zh) | 交通拥堵态势预测方法、装置、设备及存储介质 | |
CN112650833A (zh) | Api匹配模型建立方法及跨城市政务api匹配方法 | |
CN114048354B (zh) | 基于多元表征和度量学习的试题检索方法、装置及介质 | |
CN112307364B (zh) | 一种面向人物表征的新闻文本发生地抽取方法 | |
CN112860898A (zh) | 一种短文本框聚类方法、系统、设备及存储介质 | |
CN115309899B (zh) | 一种文本中特定内容识别存储方法及系统 | |
CN111339258A (zh) | 基于知识图谱的大学计算机基础习题推荐方法 | |
CN112015937B (zh) | 一种图片地理定位方法及系统 | |
Evans et al. | Livemaps: Learning geo-intent from images of maps on a large scale | |
CN113343012A (zh) | 一种新闻配图方法、装置、设备及存储介质 | |
CN112417322B (zh) | 一种面向兴趣点名称文本的类型判别方法及系统 | |
CN114880572B (zh) | 新闻客户端智能推荐系统 | |
CN113312523B (zh) | 字典生成、搜索关键字推荐方法、装置和服务器 | |
CN114896436B (zh) | 一种基于表征互信息的网络结构搜索方法 | |
Choi et al. | Developing an alias management method based on word similarity measurement for POI application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |