CN107239442A - 一种计算地址相似度的方法和装置 - Google Patents

一种计算地址相似度的方法和装置 Download PDF

Info

Publication number
CN107239442A
CN107239442A CN201710321471.6A CN201710321471A CN107239442A CN 107239442 A CN107239442 A CN 107239442A CN 201710321471 A CN201710321471 A CN 201710321471A CN 107239442 A CN107239442 A CN 107239442A
Authority
CN
China
Prior art keywords
mrow
address
mtd
similarity
rank
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.)
Pending
Application number
CN201710321471.6A
Other languages
English (en)
Inventor
范叶亮
杜强
王宇达
卢周
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Financial Technology Holding Co Ltd
Original Assignee
Beijing Jingdong Financial Technology Holding Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Financial Technology Holding Co Ltd filed Critical Beijing Jingdong Financial Technology Holding Co Ltd
Priority to CN201710321471.6A priority Critical patent/CN107239442A/zh
Publication of CN107239442A publication Critical patent/CN107239442A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Other Investigation Or Analysis Of Materials By Electrical Means (AREA)

Abstract

本发明提供一种计算地址相似度的方法和装置,包括获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分;计算拆分后两地址信息中同一级别之间的相似度;汇总两地址信息中各级别的相似度,获得两地址信息的相似度。因此,本发明所述的计算地址相似度的方法和装置能够精准、快速地计算出两条中文地址的相似程度。

Description

一种计算地址相似度的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种计算地址相似度的方法和装置。
背景技术
目前,地址相似度计算是指对两条地址比较其表达的地理含义的近似程度。其中,中文表述的复杂性和不同个体对同一地理位置表述的差异性,一个地理位置从文本角度可能出现许多种表述形式,而实质上其表达的真实地理含义相同。随着对表述的地址信息的不断积累,导致了大量冗余(地理位置一致但表述不完全相同)信息,同时也导致了大量不规范地址表述的存在。因此计算两个地址的相似度在业务场景中起着至关重要的作用,这些业务场景包括但不限于:基于地理位置和房产信息的金融授信,基于虚假收货地址的欺诈订单识别等等。
现有技术中,地址相似度的计算利用真实采集的地理GIS信息库,通过检索将两条地址映射到对应的经纬度区域,根据两个地址的经纬度区域之间的距离得出两条中文地址的相似度。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:完全依赖于一个真实的GIS数据库,而GIS数据采集受到资质、时间和人力等条件的制约,且GIS数据库的购买亦需要大量的资金成本。因此依赖于GIS数据库的中文地址相似度系统的构建前期成本太高,而单纯从文本相似度角度出发的中文地址相似度计算效果较差。
发明内容
有鉴于此,本发明实施例提供了一种计算地址相似度的方法和装置,能够精准、快速地计算出两条中文地址的相似程度。
为实现上述目的,根据本发明实施例的一个方面,提供了一种计算地址相似度的方法,包括:
获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分;
计算拆分后两地址信息中同一级别之间的相似度;
汇总两地址信息中各级别的相似度,获得两地址信息的相似度。
在本发明的一些实施例中,根据预设的级别将获取的地址信息进行级别拆分,拆分后的级别具有的信息为地址分词。
在本发明的一些实施例中,计算拆分后两地址信息中同一级别之间的相似度时,两个地址信息同一级别的两个地址分词分别为其中c表示一个地址分词中的字符,m≤n;根据如下公式(1)计算两个地址分词的相似度:
其中,type(w)∈{0,1,2}表示计算两地址分词相似度时的可选类型,MatchCount为两地址分词匹配字数的算子,length为一个地址分词文本长度的算子,min为计算两地址分词中文本长度最小值的算子,max为计算两地址分词中文本长度最大值的算子,avg为计算两地址分词文本长度平均值的算子。
在本发明的一些实施例中,所述MatchCount在计算两地址分词匹配的字数时,采用的是将一地址分词中每个字与另一地址分词中的所有字进行匹配。
在本发明的一些实施例中,拆分后的每个级别对应有多个地址分词时,通过计算任意两个地址分词的相似度其中i≤m,j≤n,WordSim表示进行公式(1)的操作;以获得任意两个地址分词相似度的矩阵:
然后,在所述相似度矩阵中获得前m个最大相似度,并将所述的m个最大相似度累加获得其中分别表示同级别的两地址分词集合;之后,根据公式(3)计算所述级别的相似度:
其中,type(l)∈{0,1,2}为计算所述级别相似度时的可选类型,Length为计算该级别中地址分词集合中元素的数量的算子,min为计算两地址信息中该级别中地址分词集合中元素的数量最小值的算子,max为计算两地址信息中该级别中地址分词集合中元素的数量最大值的算子,avg为计算两地址信息中该级别中地址分词集合中元素的数量平均值的算子。
在本发明的一些实施例中,在计算任意两个地址分词的相似度之前,对所述级别的所有地址分词进行去重处理,获得去重后的地址分词集合seg(u)
在本发明的一些实施例中,在进行去重处理之前,先对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词;所述元素特征词为表达地理等级,所述元素描述词为表达地理实体。
在本发明的一些实施例中,在汇总两地址信息各级别的相似度时,将每个级别的相似度与该级别预先设置的权重相乘,然后将每个级别相似度与对应权重的乘积相加获得两地址信息的相似度。
在本发明的一些实施例中,在汇总两地址信息之间的相似度时按照级别顺序依次计算级别相似度与对应权重的乘积并累加相乘的结果;
并且对每个级别分别预先设置阈值,在按照级别顺序依次计算级别的相似度与对应的级别权重乘积之前,先判断该级别的相似度是否大于等于预设的该级别阈值;根据判断结果,如果该级别的相似度大于或等于预设的该级别阈值,则计算该级别相似度与对应的级别权重的乘积;如果该级别的相似度没有大于或等于预设的该级别阈值,则将按顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。
根据本发明实施例的另一个方面,还提供了一种计算地址相似度的装置,包括:
拆分模块,用于获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分;
同级别相似度计算模块,用于计算拆分后两地址信息中同一级别之间的相似度;
相似度汇总模块,用于汇总两地址信息中各级别的相似度,获得两地址信息的相似度。
在本发明的一些实施例中,所述拆分模块根据预设的级别将获取的地址信息进行级别拆分,拆分后的级别具有的信息为地址分词。
在本发明的一些实施例中,所述同级别相似度计算模块计算拆分后两地址信息中同一级别之间的相似度时,两个地址信息同一级别的两个地址分词分别为其中c表示一个地址分词中的字符,m≤n;根据如下公式(1)计算两个地址分词的相似度:
其中,type(w)∈{0,1,2}表示计算两地址分词相似度时的可选类型,MatchCount为两地址分词匹配字数的算子,length为一个地址分词文本长度的算子,min为计算两地址分词中文本长度最小值的算子,max为计算两地址分词中文本长度最大值的算子,avg为计算两地址分词文本长度平均值的算子。
在本发明的一些实施例中,所述MatchCount在计算两地址分词匹配的字数时,采用的是将一地址分词中每个字与另一地址分词中的所有字进行匹配。
在本发明的一些实施例中,所述同级别相似度计算模块,还用于:
对拆分后每个级别对应有多个地址分词,通过计算任意两个地址分词的相似度其中i≤m,j≤n,WordSim表示进行公式(1)的操作;以获得任意两个地址分词相似度的矩阵:
然后,在所述相似度矩阵中获得前m个最大相似度,并
将所述的m个最大相似度累加获得其中分别表示同级别的两地址分词集合;之后,根据公式(3)计算所述级别的相似度:
其中,type(l)∈{0,1,2}为计算所述级别相似度时的可选类型,Length为计算该级别中地址分词集合中元素的数量的算子,min为计算两地址信息中该级别中地址分词集合中元素的数量最小值的算子,max为计算两地址信息中该级别中地址分词集合中元素的数量最大值的算子,avg为计算两地址信息中该级别中地址分词集合中元素的数量平均值的算子。
在本发明的一些实施例中,所述同级别相似度计算模块在计算任意两个地址分词的相似度之前,对所述级别的所有地址分词进行去重处理,获得去重后的地址分词集合seg(u)
在本发明的一些实施例中,所述同级别相似度计算模块在进行去重处理之前,先对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词;所述元素特征词为表达地理等级,所述元素描述词为表达地理实体。
在本发明的一些实施例中,所述相似度汇总模块在汇总两地址信息各级别的相似度时,将每个级别的相似度与该级别预先设置的权重相乘,然后将每个级别相似度与对应权重的乘积相加获得两地址信息的相似度。
在本发明的一些实施例中,所述相似度汇总模块,还用于:
在汇总两地址信息之间的相似度时按照级别顺序依次计算级别相似度与对应权重的乘积并累加相乘的结果;
并且对每个级别分别预先设置阈值,在按照级别顺序依次计算级别的相似度与对应的级别权重乘积之前,先判断该级别的相似度是否大于等于预设的该级别阈值;根据判断结果,如果该级别的相似度大于或等于预设的该级别阈值,则计算该级别相似度与对应的级别权重的乘积;如果该级别的相似度没有大于或等于预设的该级别阈值,则将按顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。
根据本发明实施例的另一个方面,还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用地址信息级别拆分,并对同级别进行相似度计算再汇总获得两地址信息相似度的技术手段,所以克服了要想获得两条地址信息的相似度完全依赖于一个真实的GIS数据库的技术问题,进而达到了完全脱离GIS数据库,并能够精准、快速地计算出两地址信息的相似度的技术效果。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明第一实施例中计算地址相似度方法的流程示意图;
图2是根据本发明可参考实施例中计算地址相似度方法的流程示意图;
图3是根据本发明实施例中计算地址相似度装置的结构示意图;
图4是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的计算地址相似度方法,如图1所示,所述的计算地址相似度方法包括:
步骤S101,获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分。
在实施例中,所述预设的级别可以划分为如下(表1所示):
表1:地址级别说明
名称 代码 说明
N(Nation) 国家
P(Province) 直辖市,自治区,特别行政区等
C(County) 地级市等
T(Town) 县,县级市等
乡镇 V(Village) 乡,镇等
地区 D(District) 村,社区等
建筑物 B(Building) 小学,大厦,A区,B座等
明细 M(More) 单元,楼层,门牌号等
方位 L(Localizer) 方位词,比如(以南,以内,之间)
根据预设的级别可以将获取的地址信息进行级别拆分,拆分后的级别具有的信息为地址分词。即所述的地址分词表示为地址信息经过级别拆分后,每个级别中对应的信息内容。例如:一条中文地址:“北京市朝阳区天辰东路国家会议中心5层”中“北京市”则表示“省”级的地址分词。值得说明的是,在具体实施过程中可以通过“|”对地址信息进行每个级别之间的分割,例如:中文地址:“北京市朝阳区天辰东路国家会议中心5层”分级别拆分后为“北京市|朝阳区|天辰东路|国家会议中心|5层”。
较佳的,不仅对地址信息进行级别的拆分,同时还对拆分后的每个级别进行级别标识,可以在每个级别拆分上标识该级别的代码,例如在级别为“市”的“北京市”上标识“N”。
进一步地,对于每个级别内的地址分词还可以进行类别划分,可参阅表2所示的地址分词字类型:
表2:地址分词字类型
名称 代码
元素描述词 D(Description)
元素特征词 F(Feature)
根据表2中的地址分词字类型的划分,所述元素特征词为表达地理等级,所述元素描述词为表达地理实体。例如可以对一个地址分词“朝阳区”,其中“朝阳”为元素描述词,“区”为元素特征词。
较佳的,可以在划分的元素描述词和元素特征词的地址分词上进行类型标识,例如元素描述词“朝阳”可以标识“D”。
更进一步地,对于每个级别还设置有起始位置信息,即每个级别的地址分词的第一个字在地址信息中的位置序列号。例如:中文地址:“北京市朝阳区天辰东路国家会议中心5层”中地址分词“朝阳区”的起始位置标识为3(整个地址信息的位置序列号从0开始)。
从上面的实施例中可以看出,无论是对地址信息进行级别拆分还是级别内地址分词的类别划分,都是对地址信息的一种格式化处理,而这种格式化处理的目的就是为了后续对每个级别的相似度的计算做好准备。
步骤S102,计算拆分后两地址信息中同一级别之间的相似度。
作为实施例,可以计算两地址信息同级别中两个地址分词之间的相似度,从而获得所述级别的相似度。具体的实施过程包括:
首先,对于所述的两地址信息,同一级别l(level的缩写)中的地址分词其中c表示一个地址分词中的字符,假设m≤n。根据如下公式(1)计算两个地址分词的相似度:
其中,w1表示地址信息中一个级别的地址分词,w2表示另一地址信息中同级别的地址分词,type(w)∈{0,1,2}表示计算两地址分词相似度时的可选类型(其中,在这里所述的可选类型就是指对应的公式,例如type(w)=0则对应的类型(公式)为),MatchCount为两地址分词匹配字数的算子,length为一个地址分词文本长度的算子(即地址分词的字数),min为计算两地址分词中文本长度最小值的算子,max为计算两地址分词中文本长度最大值的算子,avg为计算两地址分词文本长度平均值的算子(可以预先设置小数位数)。
进一步地,MatchCount在计算两地址分词匹配的字数时,采用的是将一地址分词中每个字与另一地址分词中的所有字进行匹配,采用的该方法能够从一定程度上缓解缩写带来的匹配程度较低的问题。
例如:w1为“北师大”,w2为“北京师范大学”:初始化m=3、n=6、counter=0(counter为统计匹配的字数),然后i=1、j=1(i≤m,j≤n)、counter=1,然后i=2、j=2、 counter=1,然后i=2、j=3、counter=2,然后i=3、j=4、counter=2,然后i=3、j=5、counter=3,然后i=4=m+1结束。
在一个较佳地实施例中,可能在地址信息中的一个级别具有多个地址分词,为了实现对这种具有大量地址分词的级别进行快速、精准的相似度计算可以通过计算任意两个地址分词的相似度(其中i≤m,j≤n),然后获得任意两个地址分词相似度的矩阵:
然后,在所述相似度矩阵中获得前m个最大相似度,并将所述的m个最大相似度累加获得其中 之后,根据公式(3)计算所述级别的相似度:
其中,type(l)∈{0,1,2}为计算所述级别相似度时的可选类型,即对应的公式。Length为计算该级别中地址分词集合中元素的数量的算子,min为计算两地址信息中该级别中地址分词集合中元素的数量最小值的算子,max为计算两地址信息中该级别中地址分词集合中元素的数量最大值的算子,avg为计算两地址信息中该级别中地址分词集合中元素的数量平均值的算子(可以预先设置小数位数)。
值得说明的是,在所述相似度矩阵中获得前m个最大相似度时,采用的方法是在相似度矩阵中选择一个最大相似度,然后删除该最大相似度所在的列和行中的所有相似度,之后再在删除了该最大相似度所在的列和行中所有相似度的矩阵中选择一个最大相似度,重复上述过程直至获得m个最大相似度。
在一个优选的实施例中,在计算任意两个地址分词的相似度之前可以对所述级别的所有地址分词进行去重处理,即去除两个相同地址分词中的一个,保留其中一个,获得去重后的地址分词集合seg(u),例如:seg={北京,北京}去重后为sug(u)={北京}。可以看出,去重后的所述级别的地址分词可以大大降低该级别相似度的计算量。
更进一步地,可以在进行去重处理之前,先对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词。例如:seg={北京,北京市}采用提取描述词的预处理方法可以得到seg(pp)={北京,北京}。可以看出,预处理的功能就是能够发现更多表述意义重复的地址分词,提高后续去重处理的效果。
值得说明的是,经历了预处理和去重处理后得到的地址分词集合为那么在计算具有多个地址分词的级别的相似度时采用的公式(3)可以变成公式(4):
步骤S103,汇总两地址信息中各级别的相似度,获得两地址信息的相似度。
在实施例中,在汇总两地址信息各级别的相似度时,可以将每个级别的相似度与该级别预先设置的权重相乘,然后将每个级别相似度与对应权重的乘积相加获得两地址信息的相似度。上面所述的实施例是对每个级别分别预先设置了权重(如表3中),然后通过每个级别的相似度和权重汇总得到整个两地址信息之间的相似度。因此可以得到更为精确的两地址信息之间的相似度。
进一步地,在汇总两地址信息之间的相似度时需要按照级别顺序依次计算级别相似度与对应权重的乘积并累加相乘的结果,而级别顺序可以按照被拆分的地址信息从左到右的级别,也可以从右到左的级别。优选的,采用按照被拆分的地址信息从左到右的级别,因为按照中文地址信息的书写习惯一般先从范围最大的地址分词开始依次缩小范围。
更进一步地,还可以对每个级别分别预先设置一个阈值,在按照级别顺序依次计算级别的相似度与对应的级别权重乘积之前,先判断该级别的相似度是否大于或等于预设的该级别阈值。根据判断结果,如果该级别的相似度大于或等于预设的该级别阈值,则计算该级别相似度与对应的级别权重的乘积。如果该级别的相似度没有大于或等于预设的该级别阈值,则将按顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。其中,所述预设的每个级别的阈值可以参阅表3。
可以看出,设置阈值并将级别相似度与该级别的阈值进行比较,是可以在很大程度上简化汇总各级别相似度的过程。也就是说,当判断得到一个级别的相似度没有大于或等于预设的该级别阈值时,则不再需要计算该级别以及按顺序该级别之后的级别相似度与对应权重的乘积,直接累加按顺序在该级别之前的级别相似度与对应权重的乘积即可得到整个两地址信息的相似度。
表3:不同级别相似度计算和汇总配置表
等级 权重 阈值
Nation 0 0
Province 0.1 1
City 0.1 1
Town 0.1 0
Village 0.2 0
District 0.2 0
Building 0.3 0
More 0 0
Localizer 0 0
图2是根据本发明实施例可参考的一种计算地址相似度方法,如图2所示,所述的计算地址相似度方法可以包括:
步骤S201,获取两个地址信息。
步骤S202,根据预设的级别可以将获取的地址信息进行级别拆分,拆分后的级别具有的信息为地址分词。
步骤S203,对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词。
步骤S204,对预处理后的所有地址分词进行去重处理,获得去重后的地址分词集合seg(u)
步骤S205,计算任意两个地址分词的相似度,获得任意两个地址分词相似度的矩阵。具体的实施包括:
通过公式(1)计算任意两个地址分词的相似度获得任意两个地址分词相似度的矩阵:
步骤S206,在所述相似度矩阵中获得前m个最大相似度,并将所述的m个最大相似度累加获得其中为通过预处理和去重后得到的地址分词集合。
步骤S207,根据下列公式计算所述级别的相似度:
步骤S208,判断是否完成所有两地址信息同级别的相似度计算,若是则执行步骤S209,否则返回步骤S203。
步骤S209,按照级别顺序,判断级别的相似度是否大于或等于预设的该级别阈值,若是则进行步骤S210,否则执行步骤S211。
步骤S210,按照级别顺序依次计算级别相似度与对应权重的乘积并累加获得两地址信息之间的相似度。
步骤S211,将按照级别顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。
另外,在本发明可参考实施例中所述的计算地址相似度方法的具体实施内容,在上面所述的计算地址相似度方法中已经详细说明了,故在此重复内容不再说明。
在本发明实施例的另一方面,还给出了一种计算地址相似度装置,参阅图3所示,所述的计算地址相似度装置300包括拆分模块301、同级别相似度计算模块302以及相似度汇总模块303。其中,拆分模块301获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分。然后同级别相似度计算模块302计算拆分后两地址信息中同一级别之间的相似度,相似度汇总模块303汇总两地址信息中各级别的相似度,获得两地址信息的相似度。
进一步地,拆分模块301根据预设的级别可以将获取的地址信息进行级别拆分(优选的采用表1中的地址级别进行拆分),拆分后的级别具有的信息为地址分词。其中,所述的地址分词表示为地址信息经过级别拆分后,每个级别中对应的信息内容。
在一个较佳的实施例中,同级别相似度计算模块302对于所述的两地址信息,同一级别l(level的缩写)中的地址分词 其中c表示一个地址分词中的字符,假设m≤n。根据如下公式(1)计算两个地址分词的相似度:
其中,w1表示地址信息中一个级别的地址分词,w2表示另一地址信息中同级别的地址分词,type(w)∈{0,1,2}表示计算两地址分词相似度时的可选类型(其中,在这里所述的可选类型就是指对应的公式,例如type(w)=0则对应的类型(公式)为),MatchCount为两地址分词匹配字数的算子,length为一个地址分词文本长度的算子(即地址分词的字数),min为计算两地址分词中文本长度最小值的算子,max为计算两地址分词中文本长度最大值的算子,avg为计算两地址分词文本长度平均值的算子(可以预先设置小数位数)。
进一步地,MatchCount在计算两地址分词匹配的字数时,采用的是将一地址分词中每个字与另一地址分词中的所有字进行匹配,采用的该方法能够从一定程度上缓解缩写带来的匹配程度较低的问题。
在另一个较佳的实施例中,可能在地址信息中的一个级别具有多个地址分词,为了实现对这种具有大量地址分词的级别进行快速、精准的相似度计算。同级别相似度计算模块302可以通过计算任意两个地址分词的相似度(其中i≤m,j≤n),然后获得任意两个地址分词相似度的矩阵:
然后,在所述相似度矩阵中获得前m个最大相似度,并将所述的m个最大相似度累加获得其中之后,根据公式(3)计算所述级别的相似度:
其中,type(l)∈{0,1,2}为计算所述级别相似度时的可选类型,即对应的公式。Length为计算该级别中地址分词集合中元素的数量的算子,min为计算两地址信息中该级别中地址分词集合中元素的数量最小值的算子,max为计算两地址信息中该级别中地址分词集合中元素的数量最大值的算子,avg为计算两地址信息中该级别中地址分词集合中元素的数量平均值的算子(可以预先设置小数位数)。
值得说明的是,在所述相似度矩阵中获得前m个最大相似度时,采用的方法是在相似度矩阵中选择一个最大相似度,然后删除该最大相似度所在的列和行中的所有相似度,之后再在删除了该最大相似度所在的列和行中所有相似度的矩阵中选择一个最大相似度,重复上述过程直至获得m个最大相似度。
在一个优选的实施例中,同级别相似度计算模块302在计算任意两个地址分词的相似度之前可以对所述级别的所有地址分词进行去重处理,即去除两个相同地址分词中的一个,保留其中一个,获得去重后的地址分词集合seg(u)。可以看出,去重后的所述级别的地址分词可以大大降低该级别相似度的计算量。
进一步地,同级别相似度计算模块302可以在进行去重处理之前,先对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词。可以看出,预处理的功能就是能够发现更多表述意义重复的地址分词,提高后续去重处理的效果。
另外,相似度汇总模块303在汇总两地址信息各级别的相似度时,可以将每个级别的相似度与该级别预先设置的权重相乘,然后将每个级别相似度与对应权重的乘积相加获得两地址信息的相似度。上面所述的实施例是对每个级别分别预先设置了权重(如表3中),然后通过每个级别的相似度和权重汇总得到整个两地址信息之间的相似度。因此可以得到更为精确的两地址信息之间的相似度。
进一步地,在汇总两地址信息之间的相似度时需要按照级别顺序依次计算级别相似度与对应权重的乘积并累加相乘的结果,而级别顺序可以按照被拆分的地址信息从左到右的级别,也可以从右到左的级别。
更进一步地,还可以对每个级别分别预先设置一个阈值,在按照级别顺序依次计算级别的相似度与对应的级别权重乘积之前,先判断该级别的相似度是否大于等于预设的该级别阈值。根据判断结果,如果该级别的相似度大于或等于预设的该级别阈值,则计算该级别相似度与对应的级别权重的乘积。如果该级别的相似度没有大于或等于预设的该级别阈值,则将按顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。其中,所述预设的每个级别的阈值可以参阅表3。
需要说明的是,在本发明所述的计算地址相似度装置的具体实施内容,在上面所述的计算地址相似度方法中已经详细说明了,故在此重复内容不再说明。
下面参考图4,其示出了适于用来实现本发明实施例的终端设备的计算机系统400的结构示意图。图4示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,计算机系统400包括中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM 403中,还存储有系统400操作所需的各种程序和数据。CPU401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(CPU)401执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括拆分模块、同级别相似度计算模块和相似度汇总模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,拆分模块还可以被描述为“向所连接的服务端发送地址信息获取请求的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备至少包括:获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分。然后计算拆分后两地址信息中同级别地址分词的相似度,汇总两地址信息中各级别地址分词的相似度,获得两地址信息的相似度。
根据本发明实施例的技术方案,能够完全不依赖GIS数据库,创造性的提出了对地址信息进行级别拆分,并可以对同级别中的地址分词通过计算得到相似度,以根据该相似度获得整个两地址信息之间的相似度。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (20)

1.一种计算地址相似度的方法,其特征在于,包括:
获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分;
计算拆分后两地址信息中同一级别之间的相似度;
汇总两地址信息中各级别的相似度,获得两地址信息的相似度。
2.根据权利要求1所述的方法,其特征在于,根据预设的级别将获取的地址信息进行级别拆分,拆分后的级别具有的信息为地址分词。
3.根据权利要求2所述的方法,其特征在于,计算拆分后两地址信息中同一级别之间的相似度时,两个地址信息同一级别的两个地址分词分别为其中c表示一个地址分词中的字符,m≤n;根据如下公式(1)计算两个地址分词的相似度:
<mrow> <msup> <mi>sim</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <mi>M</mi> <mi>a</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mi>C</mi> <mi>o</mi> <mi>u</mi> <mi>n</mi> <mi>t</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <mi>M</mi> <mi>a</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mi>C</mi> <mi>o</mi> <mi>u</mi> <mi>n</mi> <mi>t</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mrow> <mi>max</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <mi>M</mi> <mi>a</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mi>C</mi> <mi>o</mi> <mi>u</mi> <mi>n</mi> <mi>t</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mrow> <mi>a</mi> <mi>v</mi> <mi>g</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>2</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>
其中,type(w)∈{0,1,2}表示计算两地址分词相似度时的可选类型,MatchCount为两地址分词匹配字数的算子,length为一个地址分词文本长度的算子,min为计算两地址分词中文本长度最小值的算子,max为计算两地址分词中文本长度最大值的算子,avg为计算两地址分词文本长度平均值的算子。
4.根据权利要求3所述的方法,其特征在于,所述MatchCount在计算两地址分词匹配的字数时,采用的是将一地址分词中每个字与另一地址分词中的所有字进行匹配。
5.根据权利要求3所述的方法,其特征在于,拆分后的每个级别对应有多个地址分词时,通过计算任意两个地址分词的相似度其中i≤m,j≤n,WordSim表示进行公式(1)的操作;以获得任意两个地址分词相似度的矩阵:
<mrow> <msup> <mi>sim</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>11</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>12</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mn>1</mn> <mi>n</mi> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>21</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>22</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mn>2</mn> <mi>n</mi> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>m</mi> <mn>1</mn> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>m</mi> <mn>2</mn> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>m</mi> <mi>n</mi> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>
然后,在所述相似度矩阵中获得前m个最大相似度,并将所述的m个最大相似度累加获得其中分别表示同级别的两地址分词集合;之后,根据公式(3)计算所述级别的相似度:
<mrow> <msup> <mi>sim</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msubsup> </mrow> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msubsup> </mrow> <mrow> <mi>max</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msubsup> </mrow> <mrow> <mi>a</mi> <mi>v</mi> <mi>g</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>2</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>
其中,type(l)∈{0,1,2}为计算所述级别相似度时的可选类型,Length为计算该级别中地址分词集合中元素的数量的算子,min为计算两地址信息中该级别中地址分词集合中元素的数量最小值的算子,max为计算两地址信息中该级别中地址分词集合中元素的数量最大值的算子,avg为计算两地址信息中该级别中地址分词集合中元素的数量平均值的算子。
6.根据权利要求5所述的方法,其特征在于,在计算任意两个地址分词的相似度之前,对所述级别的所有地址分词进行去重处理,获得去重后的地址分词集合seg(u)
7.根据权利要求6所述的方法,其特征在于,在进行去重处理之前,先对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词;所述元素特征词为表达地理等级,所述元素描述词为表达地理实体。
8.根据权利要求1-7任一所述的方法,其特征在于,在汇总两地址信息各级别的相似度时,将每个级别的相似度与该级别预先设置的权重相乘,然后将每个级别相似度与对应权重的乘积相加获得两地址信息的相似度。
9.根据权利要求8所述的方法,其特征在于,在汇总两地址信息之间的相似度时按照级别顺序依次计算级别相似度与对应权重的乘积并累加相乘的结果;
并且对每个级别分别预先设置阈值,在按照级别顺序依次计算级别的相似度与对应的级别权重乘积之前,先判断该级别的相似度是否大于等于预设的该级别阈值;根据判断结果,如果该级别的相似度大于或等于预设的该级别阈值,则计算该级别相似度与对应的级别权重的乘积;如果该级别的相似度没有大于或等于预设的该级别阈值,则将按顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。
10.一种计算地址相似度的装置,其特征在于,包括:
拆分模块,用于获取两个地址信息,根据预设级别分别对两个地址信息进行级别拆分;
同级别相似度计算模块,用于计算拆分后两地址信息中同一级别之间的相似度;
相似度汇总模块,用于汇总两地址信息中各级别的相似度,获得两地址信息的相似度。
11.根据权利要求10所述的装置,其特征在于,所述拆分模块根据预设的级别将获取的地址信息进行级别拆分,拆分后的级别具有的信息为地址分词。
12.根据权利要求11所述的装置,其特征在于,所述同级别相似度计算模块计算拆分后两地址信息中同一级别之间的相似度时,两个地址信息同一级别的两个地址分词分别为 其中c表示一个地址分词中的字符,m≤n;根据如下公式(1)计算两个地址分词的相似度:
<mrow> <msup> <mi>sim</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <mi>M</mi> <mi>a</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mi>C</mi> <mi>o</mi> <mi>u</mi> <mi>n</mi> <mi>t</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <mi>M</mi> <mi>a</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mi>C</mi> <mi>o</mi> <mi>u</mi> <mi>n</mi> <mi>t</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mrow> <mi>max</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <mi>M</mi> <mi>a</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mi>C</mi> <mi>o</mi> <mi>u</mi> <mi>n</mi> <mi>t</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mrow> <mi>a</mi> <mi>v</mi> <mi>g</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>2</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>
其中,type(w)∈{0,1,2}表示计算两地址分词相似度时的可选类型,MatchCount为两地址分词匹配字数的算子,length为一个地址分词文本长度的算子,min为计算两地址分词中文本长度最小值的算子,max为计算两地址分词中文本长度最大值的算子,avg为计算两地址分词文本长度平均值的算子。
13.根据权利要求12所述的装置,其特征在于,所述MatchCount在计算两地址分词匹配的字数时,采用的是将一地址分词中每个字与另一地址分词中的所有字进行匹配。
14.根据权利要求12所述的装置,其特征在于,所述同级别相似度计算模块,还用于:
对拆分后每个级别对应有多个地址分词,通过计算任意两个地址分词的相似度其中i≤m,j≤n,WordSim表示进行公式(1)的操作;以获得任意两个地址分词相似度的矩阵:
<mrow> <msup> <mi>sim</mi> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>11</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>12</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mn>1</mn> <mi>n</mi> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>21</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mn>22</mn> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mn>2</mn> <mi>n</mi> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>m</mi> <mn>1</mn> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>m</mi> <mn>2</mn> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>m</mi> <mi>n</mi> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>)</mo> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>
然后,在所述相似度矩阵中获得前m个最大相似度,并将所述的m个最大相似度累加获得其中分别表示同级别的两地址分词集合;之后,根据公式(3)计算所述级别的相似度:
<mrow> <msup> <mi>sim</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msubsup> </mrow> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msubsup> </mrow> <mrow> <mi>max</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msubsup> <mi>sim</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msubsup> </mrow> <mrow> <mi>a</mi> <mi>v</mi> <mi>g</mi> <mrow> <mo>(</mo> <mrow> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>l</mi> <mi>e</mi> <mi>n</mi> <mi>g</mi> <mi>t</mi> <mi>h</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>seg</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <msup> <mi>type</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mo>=</mo> <mn>2</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>
其中,type(l)∈{0,1,2}为计算所述级别相似度时的可选类型,Length为计算该级别中地址分词集合中元素的数量的算子,min为计算两地址信息中该级别中地址分词集合中元素的数量最小值的算子,max为计算两地址信息中该级别中地址分词集合中元素的数量最大值的算子,avg为计算两地址信息中该级别中地址分词集合中元素的数量平均值的算子。
15.根据权利要求14所述的装置,其特征在于,所述同级别相似度计算模块在计算任意两个地址分词的相似度之前,对所述级别的所有地址分词进行去重处理,获得去重后的地址分词集合seg(u)
16.根据权利要求15所述的装置,其特征在于,所述同级别相似度计算模块在进行去重处理之前,先对所述级别中的所有地址分词进行预处理,其中预处理为提取所有地址分词中的元素特征词或元素描述词;所述元素特征词为表达地理等级,所述元素描述词为表达地理实体。
17.根据权利要求10-16任一所述的装置,其特征在于,所述相似度汇总模块在汇总两地址信息各级别的相似度时,将每个级别的相似度与该级别预先设置的权重相乘,然后将每个级别相似度与对应权重的乘积相加获得两地址信息的相似度。
18.根据权利要求17所述的装置,其特征在于,所述相似度汇总模块,还用于:
在汇总两地址信息之间的相似度时按照级别顺序依次计算级别相似度与对应权重的乘积并累加相乘的结果;
并且对每个级别分别预先设置阈值,在按照级别顺序依次计算级别的相似度与对应的级别权重乘积之前,先判断该级别的相似度是否大于等于预设的该级别阈值;根据判断结果,如果该级别的相似度大于或等于预设的该级别阈值,则计算该级别相似度与对应的级别权重的乘积;如果该级别的相似度没有大于或等于预设的该级别阈值,则将按顺序在该级别之前的级别相似度与对应的级别权重的乘积相累加获得两地址信息之间的相似度。
19.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-9中任一所述的方法。
20.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-9中任一所述的方法。
CN201710321471.6A 2017-05-09 2017-05-09 一种计算地址相似度的方法和装置 Pending CN107239442A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710321471.6A CN107239442A (zh) 2017-05-09 2017-05-09 一种计算地址相似度的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710321471.6A CN107239442A (zh) 2017-05-09 2017-05-09 一种计算地址相似度的方法和装置

Publications (1)

Publication Number Publication Date
CN107239442A true CN107239442A (zh) 2017-10-10

Family

ID=59985039

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710321471.6A Pending CN107239442A (zh) 2017-05-09 2017-05-09 一种计算地址相似度的方法和装置

Country Status (1)

Country Link
CN (1) CN107239442A (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108628811A (zh) * 2018-04-10 2018-10-09 北京京东尚科信息技术有限公司 地址文本的匹配方法和装置
CN110110015A (zh) * 2018-01-10 2019-08-09 腾讯科技(深圳)有限公司 信息点数据处理方法、处理装置及计算机可读存储介质
CN110188184A (zh) * 2019-06-04 2019-08-30 鹏元征信有限公司 一种地址信息比对的处理方法、存储介质及终端设备
CN110598791A (zh) * 2019-09-12 2019-12-20 深圳前海微众银行股份有限公司 地址相似度评价方法、装置、设备及介质
CN110765280A (zh) * 2019-10-22 2020-02-07 京东数字科技控股有限公司 地址识别方法和装置
WO2020103783A1 (zh) * 2018-11-19 2020-05-28 阿里巴巴集团控股有限公司 地址文本相似度确定方法、地址搜索方法、装置和设备
CN111325235A (zh) * 2020-01-19 2020-06-23 南京师范大学 面向多语种的通用地名语义相似度计算方法及其应用
CN112184350A (zh) * 2019-07-04 2021-01-05 中国移动通信集团江西有限公司 一种用户订单处理方法、装置、存储介质和服务器
CN113743080A (zh) * 2021-08-16 2021-12-03 南京星云数字技术有限公司 一种分层级地址文本相似度比对方法、装置及介质
CN113761089A (zh) * 2020-10-26 2021-12-07 北京京东尚科信息技术有限公司 一种地址处理方法、装置、电子设备及存储介质
CN113836357A (zh) * 2021-10-12 2021-12-24 北京商越网络科技有限公司 基于文本相似度计算的地址库数据处理方法和控制系统
CN115687870A (zh) * 2023-01-03 2023-02-03 四川易利数字城市科技有限公司 一种基于矩阵运算的地名匹配方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102626A (zh) * 2014-07-07 2014-10-15 厦门推特信息科技有限公司 一种用于短文本语义相似度计算的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102626A (zh) * 2014-07-07 2014-10-15 厦门推特信息科技有限公司 一种用于短文本语义相似度计算的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘哲 等: "一种中文地址类相似重复信息的检测方法", 《小型微型计算机系统》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110015A (zh) * 2018-01-10 2019-08-09 腾讯科技(深圳)有限公司 信息点数据处理方法、处理装置及计算机可读存储介质
CN110110015B (zh) * 2018-01-10 2023-12-12 腾讯科技(深圳)有限公司 信息点数据处理方法、处理装置及计算机可读存储介质
CN108628811B (zh) * 2018-04-10 2022-04-12 北京京东尚科信息技术有限公司 地址文本的匹配方法和装置
CN108628811A (zh) * 2018-04-10 2018-10-09 北京京东尚科信息技术有限公司 地址文本的匹配方法和装置
WO2020103783A1 (zh) * 2018-11-19 2020-05-28 阿里巴巴集团控股有限公司 地址文本相似度确定方法、地址搜索方法、装置和设备
CN111274811A (zh) * 2018-11-19 2020-06-12 阿里巴巴集团控股有限公司 地址文本相似度确定方法以及地址搜索方法
CN111274811B (zh) * 2018-11-19 2023-04-18 阿里巴巴集团控股有限公司 地址文本相似度确定方法以及地址搜索方法
CN110188184A (zh) * 2019-06-04 2019-08-30 鹏元征信有限公司 一种地址信息比对的处理方法、存储介质及终端设备
CN112184350A (zh) * 2019-07-04 2021-01-05 中国移动通信集团江西有限公司 一种用户订单处理方法、装置、存储介质和服务器
CN110598791A (zh) * 2019-09-12 2019-12-20 深圳前海微众银行股份有限公司 地址相似度评价方法、装置、设备及介质
CN110765280A (zh) * 2019-10-22 2020-02-07 京东数字科技控股有限公司 地址识别方法和装置
CN110765280B (zh) * 2019-10-22 2021-05-25 京东数字科技控股有限公司 地址识别方法和装置
WO2021142968A1 (zh) * 2020-01-19 2021-07-22 南京师范大学 面向多语种的通用地名语义相似度计算方法及其应用
CN111325235B (zh) * 2020-01-19 2023-04-25 南京师范大学 面向多语种的通用地名语义相似度计算方法及其应用
CN111325235A (zh) * 2020-01-19 2020-06-23 南京师范大学 面向多语种的通用地名语义相似度计算方法及其应用
CN113761089A (zh) * 2020-10-26 2021-12-07 北京京东尚科信息技术有限公司 一种地址处理方法、装置、电子设备及存储介质
CN113743080A (zh) * 2021-08-16 2021-12-03 南京星云数字技术有限公司 一种分层级地址文本相似度比对方法、装置及介质
CN113836357A (zh) * 2021-10-12 2021-12-24 北京商越网络科技有限公司 基于文本相似度计算的地址库数据处理方法和控制系统
CN115687870A (zh) * 2023-01-03 2023-02-03 四川易利数字城市科技有限公司 一种基于矩阵运算的地名匹配方法

Similar Documents

Publication Publication Date Title
CN107239442A (zh) 一种计算地址相似度的方法和装置
CN110892394B (zh) 对包裹交付的不正确地址的标识
CN103248658B (zh) 服务推荐装置、服务推荐方法和移动设备
CN108090162A (zh) 基于人工智能的信息推送方法和装置
CN105468742A (zh) 恶意订单识别方法及装置
CN108628811A (zh) 地址文本的匹配方法和装置
CN104077290B (zh) 一种生成推广账户的方法和装置
CN109636430A (zh) 对象识别方法及其系统
CN110795568A (zh) 基于用户信息知识图谱的风险评估方法、装置和电子设备
CN111199474A (zh) 一种基于双方网络图数据的风险预测方法、装置和电子设备
CN109829020A (zh) 地点资源数据推送方法、装置、计算机设备和存储介质
CN111222976A (zh) 一种基于双方网络图数据的风险预测方法、装置和电子设备
CN106651232B (zh) 运单号数据分析方法及装置
CN105843818A (zh) 训练设备和训练方法、判断设备、以及推荐设备
CN102236657B (zh) 一种处理上报数据的方法和服务器
CN113393306A (zh) 产品推荐方法、装置、电子设备及计算机可读介质
CN106909600A (zh) 用户背景信息的收集方法及装置
CN110968664A (zh) 一种文书检索方法、装置、设备及介质
US20230230081A1 (en) Account identification method, apparatus, electronic device and computer readable medium
CN103377186A (zh) 基于命名实体识别的Web服务整合装置、方法以及设备
CN113095723A (zh) 优惠券的推荐方法及装置
CN112258368A (zh) 政务事项的处理方法和装置
US10621208B2 (en) Category name extraction device, category name extraction method, and category name extraction program
CN107622408A (zh) 购车线索交易转化的预估方法和预估装置
CN115905472A (zh) 商机业务处理方法、装置、服务器及计算机可读存储介质

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
CB02 Change of applicant information

Address after: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Applicant after: Jingdong Digital Technology Holding Co., Ltd.

Address before: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Applicant before: Beijing Jingdong Financial Technology Holding Co., Ltd.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20171010

RJ01 Rejection of invention patent application after publication