CN109344213B - 一种基于字典树的中文地理编码方法 - Google Patents

一种基于字典树的中文地理编码方法 Download PDF

Info

Publication number
CN109344213B
CN109344213B CN201810986238.4A CN201810986238A CN109344213B CN 109344213 B CN109344213 B CN 109344213B CN 201810986238 A CN201810986238 A CN 201810986238A CN 109344213 B CN109344213 B CN 109344213B
Authority
CN
China
Prior art keywords
address
node
information
level
dictionary tree
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
Application number
CN201810986238.4A
Other languages
English (en)
Other versions
CN109344213A (zh
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.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
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 Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201810986238.4A priority Critical patent/CN109344213B/zh
Publication of CN109344213A publication Critical patent/CN109344213A/zh
Application granted granted Critical
Publication of CN109344213B publication Critical patent/CN109344213B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Navigation (AREA)

Abstract

一种基于字典树的中文地理编码方法,首先对当前的中文地理编码的背景进行了概述,阐述了中文地理编码同英文地理编码的差异和难度,包括以下步骤:1)对地址要素进行了划分;2)将标准化的字符串分割;3)讲述了如何构建字典树——构建字典树节点类型,拆分地址信息为地址要素,映射要素级别,映射出经纬度;4)探讨了如何通过构建的字典树,进行地址串搜索、通配。本发明提供了一种提高中文地址编码效率和增强灵活性的基于字典树的中文地理编码方法。

Description

一种基于字典树的中文地理编码方法
技术领域
本发明涉及一种地理信息编码、地理信息坐标映射技术、计算机应用领域,一种基于字典树中文地理编码方法。
背景技术
中文地理编码不同于其他的编码方式,是将复杂多变的中文地址数据映射成计算机能识别的地理坐标形式,例如经纬度,城市区域编码等等,即将毫无关系的纯文本字符串与空间地理建立联系。无论是提供标准的地址字符串还是提供地理坐标(经纬度、城市区域编码),都能知其一,而映射出另一方。
根据调查显示,城市信息中与地理位置相关的占据着80%左右,而这些坐标大多数都是自然语言描述的,无法进行分析,这对于城市化的中国来说,是一个极大的阻碍。所以推进数字化的城市建设和发展,提出一种高效快速的解决方法——对大量的自然语言描述的地址进行高效集约的坐标编码。这种方法的提出可以方便高效的将非空间信息转化为空间坐标信息,以便GIS系统分析和应用。对于有关部门来说,其提供了实时、快捷、可视化的强大工具;对于居民来说,地理信息编码给出行的民众带来了便利,使其方便容易的进行地址查找,帮助用户实现对未知区域,未知地点快速了解和查询,减少居民出行的盲目性,节约金钱,提高效率。
因此一个中文地址的建库、维护和管理来适应国内复杂多变的地址现状是非常有意义的,既能满足政府部门需求,又能满足民众出行查询定位日常生活需要。而目前中文地址标准化的工作难度体现在各个方面。由于地区不同,所以不同地区的地址使用情况复杂多变,明确标记代码和规定在少数几个国家机关使用,其他级别的由于数量大,结构极其复杂,长期以来缺乏有效的集约化标准,导致各个地区对地址的编码和使用很混乱,带有较重的地方特色,因此没有形成统一的命名规范。而且从技术层面来看,中文的编码难度要远远高于英文等其它语言。中文属于表意文字,文字和文字之间没有分隔号,相同的词语在不同的语境下存在不同的含义,这样在中文分词方面要比其他语言难的多。因此中文分词不能像英文分词那样用简单的分隔符划分,并且机械地采用一般的地址分级,这样很可能出现分词错误。
对此,在地理信息编码方法上进行了研究和分析,发现现存的地理信息编码在灵活和效率上,有着较大的缺陷,需要改进。
发明内容
针对中文地理信息编码复杂、标准不统一,不能直接和地理坐标直接相互映射的问题,本发明提出了一种可以快速、准确地理信息编码方案,方案的基本算法采用的是字典树,且和一种特殊的有向图相结合来解决地理信息的编码。
本发明涉及的基本概念包括地址要素、地址要素级别和标准地址。例如一个通信地址为“浙江省杭州西湖区留和路288号”,则这个通信地址由3个地址要素组成,分别是“浙江省”,“杭州市”,“西湖区”以及“留和路288号”组成。地址要素级别是一个要素的级别,假定中国级别为1,而杭州的级别是2,西湖区级别3,其代表地址的从属关系和层级关系。
本发明解决其技术问题所采用的技术方案是:
一种基于字典树的中文地理编码方法,所述中文地理编码方法包括以下步骤:
1).地址要素级别划分,将地址要素级别划分为11级别,分别是:1级,中国;2级,省、直辖市;3级,省会、地级市;4级,区、县、地级市;5级,街道、乡镇;6级,社区、村;7级,地片、区片;8级,道路、街巷;9级,楼牌号;10级,门牌号;11级,POI标志物;
2).将标准化的字符串分割,将得到的字符串,按照地址要素级别划分;
3).构建字典树,过程如下:
3.1.构建字典树节点,构建节点类,类里实例域包含地址要素、地址要素级别、标准地址、经纬度、父地址引用、节点是否可用;
3.2.收集整理尽可能多的标准信息地址串,用于数据的构建,字典树的生成;
3.3.将整理好的标准信息地址串拆分成地址要素;
3.4.将拆分好的地址要素,标记好要素级别;将分好的要素级别持久化到数据库,以便后期构建字典树查询使用;
3.5.将标记好的地址要素,通过Google地图API或者百度地图API获取当前节点的经纬度;
3.6.初始化根节点,将信息地址串拆分为地址要素,从数据库获取当前节点的要素级别,通过百度地图API获取当前地址要素节点的经纬度,将这些值初始化到根节点中;
3.7.查询地址串的要素级别为2的地址要素,初始化下级节点,并将父节点下一个指向引用指向本节点,本节点的父地址要素的引用指向父节点,并如
3.6一样将节点数据域初始化,形成二级节点;以此类推直至叶节点,完成此信息地址串的构建;
3.8.重复3.3-3.8步骤,将信息地址串拆分,然后依次建树,最后形成一个庞大的字典树;
4).信息地址串的匹配,过程如下:
4.1.信息地址串标准化,过程如下:
4.1.1.将信息地址人工拆分标记,然后送入到隐含的马尔科夫训练模型训练,通过(1)式,据统计语言设计方法,统计出某种非标准地址要素映射到标准地址要素的概率,从(2)式获得的概率,其中#是当前地址要素的在样本中的次数,估计当前的输入地址要素与标准地址要素偏差概率;
Figure BDA0001779782340000031
Figure BDA0001779782340000032
其中在(1)式中,Ot为某种不标准地址要素,St为标准地址要素。
4.1.2.通过得到的马尔科夫模型标准化信息地址串,将地址串标准化;
4.2.把标准化的地址串分割成标准的地址要素,输入到步骤3)所得到的字典树,搜寻对应的叶子节点,获得叶子节点的必须信息,则完成搜索。
进一步,所述在步骤3)中,根据标准化的信息地址串,将地址串拆分,构建成字典树;在构建字典树的基础上,通过标准化信息地址串,查找到叶子节点信息,完成搜索。
本发明的有益效果主要表现在:本发明的字典树的中文地理编码,使复杂多变的中文地址在,通过隐含的马尔科夫模型进行标准化,然后将标准化的地址要素构建地址要素字典树,供查询分析使用。
附图说明:
图1是一种基于字典树的中文地理编码方法流程图;
图2是地址要素的字典树构建的模型;
图3是通过字典树搜索的过程。
具体实施方式
下面结合附图对本发明做进一步说明。
参照图1~图3,一种基于字典树的中文地理编码方法,包括以下步骤:
1).地址要素级别划分,将地址要素级别划分为11级别,分别是:1级,中国;2级,省、直辖市;3级,省会、地级市;4级,区、县、地级市;5级,街道、乡镇;6级,社区、村;7级,地片、区片;8级,道路、街巷;9级,楼牌号;10级,门牌号;11级,POI标志物;
2).将标准化的字符串分割,将得到的字符串,按照地址要素级别划分,例如“浙江省杭州市西湖区留和路288号西苑11栋303”划分地址要素集为:1级,中国;2级,浙江省;3级,杭州市;4级,西湖区;5级,留和路288号;9级,西苑1栋303;
3).构建字典树,过程如下:
3.1.构建字典树节点,构建节点类,类里实例域包含地址要素、地址要素级别、标准地址、经纬度、父地址引用、节点是否可用;
3.2.收集整理尽可能多的标准信息地址串,用于数据的构建,字典树的生成;
3.3.将整理好的标准信息地址串拆分成地址要素。例如“中国浙江省杭州市西湖区留和路288号”,地址要素为“中国”,“浙江省”,“杭州市”等;
3.4.将拆分好的地址要素,标记好要素级别,例如“中国”1级,“杭州市”2级等等;将分好的要素级别持久化到数据库,以便后期构建字典树查询使用;
3.5.将标记好的地址要素,通过Google地图API或者百度地图API获取当前节点的经纬度;
3.6.初始化根节点,例如一个信息地址串为“中国浙江省杭州市西湖区留和路288号”,将信息地址串拆分为地址要素,例如要素节点“中国”,从数据库获取当前节点的要素级别,通过百度地图API获取当前地址要素节点的经纬度,将这些值初始化到根节点中;
3.7.查询地址串的要素级别为2的地址要素。初始化下级节点,并将父节点下一个指向引用指向本节点,本节点的父地址要素的引用指向父节点,并如3.6一样将节点数据域初始化,形成二级节点。以此类推直至叶节点,完成此信息地址串的构建;
3.8.重复3.3-3.8步骤,将信息地址串拆分,然后依次建树,最后形成一个庞大的字典树;
4).信息地址串的匹配,过程如下:
4.1.信息地址串标准化,过程如下:
4.1.1.将信息地址人工拆分标记,然后送入到隐含的马尔科夫训练模型训练,通过(1)式,据统计语言设计方法,统计出某种非标准地址要素映射到标准地址要素的概率,从(2)式获得的概率,其中#是当前地址要素的在样本中的次数,估计当前的输入地址要素与标准地址要素偏差概率;
Figure BDA0001779782340000051
Figure BDA0001779782340000052
其中在(1)式中,Ot为某种不标准地址要素,St为标准地址要素;
4.1.2.通过得到的马尔科夫模型标准化信息地址串,将地址串标准化;
4.2.把标准化的地址串分割成标准的地址要素,输入到步骤3)所得到的字典树,搜寻对应的叶子节点,获得叶子节点的必须信息,例如邮编,经纬度,则完成搜索。
进一步,所述在步骤3)中,根据标准化的信息地址串,将地址串拆分,构建成字典树;在构建字典树的基础上,通过标准化信息地址串,查找到叶子节点信息,完成搜索。
以全国信息地理信息为例,一种基于字典树的中文地理编码方法,包括以下步骤:
1).地址要素级别划分,将地址要素级别划分为11级别,分别是:1级,中国;2级,省、直辖市;3级,省会、地级市;4级,区、县、地级市;5级,街道、乡镇;6级,社区、村;7级,地片、区片;8级,道路、街巷;9级,楼牌号;10级,门牌号;11级,POI标志物;
2).将标准化的字符串分割,将得到的字符串,按照地址要素级别划分,例如“浙江省杭州市西湖区留和路288号西苑11栋303”划分地址要素集为:1级,中国;2级,浙江省;3级,杭州市;4级,西湖区;5级,留和路288号;9级,西苑1栋303;
3).构建字典树,过程如下:
3.1.构建字典树节点,构建节点类,类里实例域包含地址要素、地址要素级别、标准地址、经纬度、父地址引用、节点是否可用;
3.2.收集整理尽可能多的标准信息地址串,用于数据的构建,字典树的生成;
3.3.将整理好的标准信息地址串拆分成地址要素。例如“中国浙江省杭州市西湖区留和路288号”,地址要素为“中国”,“浙江省”,“杭州市”等;
3.4.将拆分好的地址要素,标记好要素级别,例如“中国”1级,“杭州市”2级等等;将分好的要素级别持久化到数据库,以便后期构建字典树查询使用;
3.5.将标记好的地址要素,通过Google地图API或者百度地图API获取当前节点的经纬度;
3.6.初始化根节点,例如一个信息地址串为“中国浙江省杭州市西湖区留和路288号”,将信息地址串拆分为地址要素,例如要素节点“中国”,从数据库获取当前节点的要素级别,通过百度地图API获取当前地址要素节点的经纬度,将这些值初始化到根节点中;
3.7.查询地址串的要素级别为2的地址要素。初始化下级节点,并将父节点下一个指向引用指向本节点,本节点的父地址要素的引用指向父节点,并如3.6一样将节点数据域初始化,形成二级节点。以此类推直至叶节点,完成此信息地址串的构建;
3.8.重复3.3-3.8步骤,将信息地址串拆分,然后依次建树,最后形成一个庞大的字典树;
4).信息地址串的匹配,过程如下:
4.1.信息地址串标准化,过程如下:
4.1.1.将信息地址人工拆分标记,然后送入到隐含的马尔科夫训练模型训练,通过(1)式,据统计语言设计方法,统计出某种非标准地址要素映射到标准地址要素的概率,从(2)式获得的概率,其中#是当前地址要素的在样本中的次数,估计当前的输入地址要素与标准地址要素偏差概率;
Figure BDA0001779782340000071
Figure BDA0001779782340000072
其中在(1)式中,Ot为某种不标准地址要素,St为标准地址要素;
4.1.2.通过得到的马尔科夫模型标准化信息地址串,将地址串标准化;
4.2.把标准化的地址串分割成标准的地址要素,输入到步骤3)所得到的字典树,搜寻对应的叶子节点,获得叶子节点的必须信息,例如邮编,经纬度,则完成搜索。
以上阐述的是本发明给出的一个实例展现出来的一个优良结果,显然本发明不仅适合上述实施例,在不偏离本发明基本精神及不超出本发明实质内容所涉及内容的前提下可对其做种种变化加以实施。

Claims (2)

1.一种基于字典树的中文地理编码方法,其特征在于,所述中文地理编码方法包括以下步骤:
1).地址要素级别划分,将地址要素级别划分为11级别,分别是:1级,中国;2级,省、直辖市;3级,省会、地级市;4级,区、县、地级市;5级,街道、乡镇;6级,社区、村;7级,地片、区片;8级,道路、街巷;9级,楼牌号;10级,门牌号;11级,POI标志物;
2).将标准化的字符串分割,将得到的字符串,按照地址要素级别划分;
3).构建字典树,过程如下:
3.1).构建字典树节点,构建节点类,类里实例域包含地址要素、地址要素级别、标准地址、经纬度、父地址引用、节点是否可用;
3.2).收集整理尽可能多的标准信息地址串,用于数据的构建,字典树的生成;
3.3).将整理好的标准信息地址串拆分成地址要素;
3.4).将拆分好的地址要素,标记好要素级别,将分好的要素级别持久化到数据库,以便后期构建字典树查询使用;
3.5).将标记好的地址要素,通过Google地图API或者百度地图API获取当前节点的经纬度;
3.6).初始化根节点,将信息地址串拆分为地址要素,从数据库获取当前节点的要素级别,通过Google地图API或者百度地图API获取当前地址要素节点的经纬度,将这些值初始化到根节点中;
3.7).查询地址串的要素级别为2的地址要素,初始化下级节点,并将父节点下一个指向引用指向本节点,本节点的父地址要素的引用指向父节点,并如3.6)一样将节点数据域初始化,形成二级节点,以此类推直至叶节点,完成此信息地址串的构建;
3.8).重复3.3)-3.8)步骤,将信息地址串拆分,然后依次建树,最后形成一个庞大的字典树;
4).信息地址串的匹配,过程如下:
4.1).信息地址串标准化,过程如下:
4.1.1).将信息地址人工拆分标记,然后送入到隐含的马尔科夫训练模型训练,通过(1)式,据统计语言设计方法,统计出某种非标准地址要素映射到标准地址要素的概率,从(2)式获得的概率,其中#是当前地址要素的在样本中的次数,估计当前的输入地址要素与标准地址要素偏差概率;
Figure FDA0002971232570000021
Figure FDA0002971232570000022
其中在(1)式中,Ot为某种不标准地址要素,St为标准地址要素;
4.1.2).通过得到的马尔科夫模型标准化信息地址串,将地址串标准化;
4.2).把标准化的地址串分割成标准的地址要素,输入到步骤3)所得到的字典树,搜寻对应的叶子节点,获得叶子节点的必要信息,所述必要信息包括邮编和经纬度,则完成搜索。
2.如权利要求1所述一种基于字典树的中文地理编码方法,其特征在于,所述在步骤3)中,根据标准化的信息地址串,将地址串拆分,构建成字典树;在构建字典树的基础上,通过标准化信息地址串,查找到叶子节点信息,完成搜索。
CN201810986238.4A 2018-08-28 2018-08-28 一种基于字典树的中文地理编码方法 Active CN109344213B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810986238.4A CN109344213B (zh) 2018-08-28 2018-08-28 一种基于字典树的中文地理编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810986238.4A CN109344213B (zh) 2018-08-28 2018-08-28 一种基于字典树的中文地理编码方法

Publications (2)

Publication Number Publication Date
CN109344213A CN109344213A (zh) 2019-02-15
CN109344213B true CN109344213B (zh) 2021-06-18

Family

ID=65291949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810986238.4A Active CN109344213B (zh) 2018-08-28 2018-08-28 一种基于字典树的中文地理编码方法

Country Status (1)

Country Link
CN (1) CN109344213B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109933797A (zh) * 2019-03-21 2019-06-25 东南大学 基于Jieba分词及地址词库的地理编码方法和系统
CN110287426B (zh) * 2019-05-23 2021-12-31 北京百度网讯科技有限公司 兴趣点父子关系的建立方法、装置、存储介质及处理器
CN110275940B (zh) * 2019-06-11 2022-04-15 北京贝壳时代网络科技有限公司 一种中文地址识别方法及设备
CN110990520B (zh) * 2019-11-28 2023-10-20 中国建设银行股份有限公司 一种地址编码方法、装置、电子设备和存储介质
CN112069276B (zh) * 2020-08-31 2024-03-08 平安科技(深圳)有限公司 地址编码方法、装置、计算机设备及计算机可读存储介质
CN112632213A (zh) * 2020-12-03 2021-04-09 大箴(杭州)科技有限公司 地址信息标准化方法及装置、电子设备、存储介质
CN112835897B (zh) * 2021-01-29 2024-03-15 上海寻梦信息技术有限公司 地理区域划分管理方法、数据转换方法及相关设备
CN112949260A (zh) * 2021-03-05 2021-06-11 浪潮云信息技术股份公司 一种加快非结构化企业地址转换为经纬度的方法
CN113656450A (zh) * 2021-07-12 2021-11-16 大箴(杭州)科技有限公司 地址处理方法及装置、电子设备、存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719128A (zh) * 2009-12-31 2010-06-02 浙江工业大学 一种基于模糊匹配的中文地理编码确定方法
CN102446186A (zh) * 2010-10-13 2012-05-09 上海众恒信息产业股份有限公司 中文地理编码及解码方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719128A (zh) * 2009-12-31 2010-06-02 浙江工业大学 一种基于模糊匹配的中文地理编码确定方法
CN102446186A (zh) * 2010-10-13 2012-05-09 上海众恒信息产业股份有限公司 中文地理编码及解码方法和装置
CN102446186B (zh) * 2010-10-13 2016-03-30 上海众恒信息产业股份有限公司 中文地理编码及解码方法和装置

Also Published As

Publication number Publication date
CN109344213A (zh) 2019-02-15

Similar Documents

Publication Publication Date Title
CN109344213B (zh) 一种基于字典树的中文地理编码方法
CN109145169B (zh) 一种基于统计分词的地址匹配方法
WO2020228706A1 (zh) 基于围栏地址的坐标数据处理方法、装置和计算机设备
US7046827B2 (en) Adapting point geometry for storing address density
US6816779B2 (en) Programmatically computing street intersections using street geometry
US20150356088A1 (en) Tile-based geocoder
CN106909611B (zh) 一种基于文本信息抽取的酒店自动匹配方法
WO2015027836A1 (zh) 一种地名实体识别的方法及系统
WO2015027835A1 (zh) 一种通信地址查询邮政编码的系统及终端
CN110472066A (zh) 一种城市地理语义知识图谱的构建方法
CN107203526B (zh) 一种查询串语义需求分析方法及装置
CN112612863B (zh) 一种基于中文分词器的地址匹配方法及系统
CN109933797A (zh) 基于Jieba分词及地址词库的地理编码方法和系统
US6658356B2 (en) Programmatically deriving street geometry from address data
KR20220160534A (ko) 지리적 위치 구역의 인코딩 방법, 인코딩 모델을 구축하는 방법 및 장치
CN108733810A (zh) 一种地址数据匹配方法及装置
CN114780680A (zh) 基于地名地址数据库的检索与补全方法及系统
CN116414823A (zh) 一种基于分词模型的地址定位方法和装置
CN110716999B (zh) 基于包含定性方位和定量距离的位置描述的poi定位方法
CN116431625A (zh) 一种地理实体的定位分析方法、装置及计算机设备
CN114792091A (zh) 基于词汇增强的中文地址要素解析方法、设备及存储介质
CN111325235B (zh) 面向多语种的通用地名语义相似度计算方法及其应用
CN113536781A (zh) 地址识别方法及装置、可读存储介质、终端
CN116414808A (zh) 详细地址规范化的方法、装置、计算机设备和存储介质
CN111444299A (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
GR01 Patent grant
GR01 Patent grant