中文地址识别系统[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201810713311.0
(22)申请日 2018.06.29
(71)申请人 福州大学
地址 350108 福建省福州市闽侯县福州地
区大学新区学园路2号
(72)发明人 郭文忠 陈立 郭昆 陈羽中 
(74)专利代理机构 福州元创专利商标代理有限
公司 35100
代理人 蔡学俊
(51)Int.Cl.
G06F  17/30(2006.01)
G06F  17/27(2006.01)
(54)发明名称中文地址识别系统(57)摘要本发明涉及一种中文地址识别系统,包括:数据预处理模块、地址标准化模块、地址清洗模块、关系构建模块以及地址管理模块。数据预处理模块将源地址数据输入后进行预处理,并粗分成词。地址标准化模块通过Trie树结构与正则匹配方式对有效地址进行十级地址标准化处理。地址清洗模块包括地址补全和地址去重。关系构建模块包括地址标签识别与人关系构建。地址管理模块包括地址模型管理和地址库管理。本发明通过结合Trie树与有限自动机能有效提高中文地址标准化分级的准确率,对于庞大的地址数据有较快的处理速率,对于相似地址的智能识别也有较高的准确率,并能根据地址信息获取人关
系。权利要求书2页  说明书6页  附图8页CN 109033225 A 2018.12.18
C N  109033225
A
1.一种中文地址识别系统,其特征在于,包括:
数据预处理模块;将源地址数据输入后进行预处理,并粗分成词;
地址标准化模块;对于行政区域地址数据,利用 Trie 树结构寻标准的前4级地址特征,得到相应行政区域包含的分级标注地址;对于非标准库内的地址数据,使用基于正则匹配的地址分级识别方法,进行
关键字提取,使用有限状态自动机按照地址标注等级的跳转规则验证提取后地址的有效性;
地址清洗模块;地址清洗模块包括地址补全和地址去重;所述地址补全采用基于相似地址的相应部分进行补全,实现详细地址规范化;所述地址去重对同一人的多个地址进行去重,保留不同的地址以及统计每条地址的使用次数;
关系构建模块;关系构建模块包括地址标签识别与人关系构建;所述地址标签识别将地址通过一API获取其地址标签并存入数据库;所述人关系构建依据地址标签与人关系的映射表确定人关系;地址标签及人关系构建的结果均存入数据库;
地址管理模块;地址管理模块包括地址模型管理和地址库管理;地址模型管理对Trie 树模型创建、存储、导入以及查询;地址库管理模块对MongoDB数据库的插入、查询、修改和删除。
2.根据权利要求1所述的中文地址识别系统,其特征在于,所述数据预处理模块对输入的邮递源地址数据进行去除噪声地址、去除地址中的特殊符号处理,排除无效或是不可识别的地址,然后再由HanLP切词工具将余下的有效地址粗分成词。
3.根据权利要求1所述的中文地址识别系统,其特征在于,所述地址标准化模块通过Trie树结构与正则匹配方式对有效地址进行十级地址标准化处理,包括:前四级的标准行政地址的标准化和后六级的详细地
址的标准化;通过对标准的四级地址分词构建Trie树,输出Trie树模型并保存到数据库中;对于输入的待分级识别的样本数据,通过分词再导入Tire树模型进行模糊匹配识别出前四级的标准行政地址,而后再导入有限状态自动机进行正则匹配出后六级的详细地址,最后合并输出地址的十级标注。
4.根据权利要求3所述的中文地址识别系统,其特征在于,所述前四级的标准行政地址利用识别搜索算法在Trie树中进行识别,所述识别搜索算法按照如下步骤实现:步骤S1:输入分词后的样本数据地址段;
步骤S2:根节点放入队列;
步骤S3:判断当前队列是否为空;若不为空,转步骤S4;否则转步骤S10;
步骤S4:取出队首元素,并判断其是否有子节点;若有,转步骤S5;否则转步骤S3;
步骤S5:遍历一个子节点,判断子节点的值是否与当前地址段匹配;若匹配,转步骤S6;否则,转步骤S7;
步骤S6:判断当前是否是第一个地址段,并且与之匹配上的是第三级或第四级的地址,若是,将该节点存入一个list中,转步骤S7,否则,转步骤S8;
步骤S7:将当前节点的所有子节点放入队列中,转步骤S9;
步骤S8:判断上一步是否匹配到多个结果,并且与之匹配到的是第四级地址;若是,更新list,转步骤S9;否则,清空当前队列,再将当前节点加入队列,转步骤S3;
步骤S9:判断当前元素是否为最后一个子节点;若是,转步骤S3;否则,转步骤S5;
步骤S10:从list中出地址级别最大的节点,依次向上出其父节点,得到匹配完的
前四级结果;
步骤S11:判断以上结果中是否包含null,并且剩余地址段是否存在前四级地址;若是,转S12,否则输出结果;
步骤S12:将剩余地址再次进行树匹配,将再次匹配的结果与原结果进行比较;若再次匹配得到的结果包含了原结果,那么更新这个结果,并输出。
5.根据权利要求3所述的中文地址识别系统,其特征在于,所述后六级利用所述有限状态自动机的状态转移规则对地址信息逐层进行正则匹配,得到相应级层地址的地址要素;识别前四级地址后,余下的地址作为初始状态导入有限状态自动机进行后六级正则匹配;当符合路级别的提取规则时,由初始状态转向状态1,状态1匹配到符合路号级别的提取规则时转向状态2,状态2匹配到符合楼号级别的提取规则时转向状态3,状态3匹配到符合单元号级别的提取规则时转向状态4,状态4匹配到符合户号级别的提取规则
时转向状态5;无法满足剩余状态提取规则的地址内容作为备注级内容转向状态6,最后转向结束状态,实现后六级的详细地址的识别。
6.根据权利要求1所述的中文地址识别系统,其特征在于,所述地址补全通过采用基于 SNM算法补全窗口内的不完整地址。
中文地址识别系统
技术领域
[0001]本发明涉及一种中文地址识别系统。
背景技术
[0002]在地理信息系统中,地理编码技术有着广泛的应用。地理编码过程中,最核心的是地址匹配技术,地址匹配技术的好坏,直接影响到地理编码的准确性和效率。全文索引、中文分词、分级别匹配和模糊地址匹配是目前常用的地址匹配算法。陈细谦等尝试在地址标准化过程中通过错误总结和使用有限状态机实现地址的规范化,由于错误类型的复杂性,使得实际中总匹配率只有50%左右;孙亚夫等提出利用最大正向匹配算法在进行分词的同时查询判断地址要素,但地址匹配过分依赖词库,对于未登记的地址和包含干扰词的地址匹配率较低;孙存等提出分级地址库模型,减少了维护分词的步骤,简化了
实现流程,林澍哲提出分词和地址加权的匹配模型,减少了数据冗余,提高了匹配兼容性,但由于两者过分依赖数据库查询,性能不高;张作华等尝试先进行地址分词再按照不同公式进行数据库查询来减少查询次数,由于地址级别的复杂性,地址到公式的转换仍然是个比较困难的问题;程昌秀等用基于规则的模糊中文分词进行地址匹配,由于地址级别的跳跃不规律,规则很难做到通用。以上研究提出了很多地址匹配方法,但由于地址命名多样化,地址级别跳跃不规律,干扰词普遍存在,地址匹配还是存在着一些问题,同时由于地址匹配系统数据量庞大,系统的匹配性能低下也是亟须解决的问题。
发明内容
[0003]本发明的目的在于提供一种中文地址识别系统,以克服现有技术中存在的缺陷。[0004]为实现上述目的,本发明的技术方案是:一种中文地址识别系统,包括:数据预处理模块;将源地址数据输入后进行预处理,并粗分成词;
地址标准化模块;对于行政区域地址数据,利用 Trie 树结构寻标准的前4级地址特征,得到相应行政区域包含的分级标注地址;对于非标准库内的地址数据,使用基于正则匹配的地址分级识别方法,进行关键字提取;使用有限状态自动机按照地址标注等级的跳转规则验证提取后地址的有效性;
地址清洗模块;地址清洗模块包括地址补全和地址去重;所述地址补全采用基于相似地址的相应部分进行补全,实现详细地址规范化;所述地址去重对同一人的多个地址进行去重,保留不同的地址以及统计
每条地址的使用次数;
关系构建模块;关系构建模块包括地址标签识别与人关系构建;所述地址标签识别将地址通过一API获取其地址标签并存入数据库;所述人关系构建依据地址标签与人关系的映射表确定人关系;地址标签及人关系构建的结果均存入数据库;
地址管理模块;地址管理模块包括地址模型管理和地址库管理;地址模型管理对Trie 树模型创建、存储、导入以及查询;地址库管理模块对MongoDB数据库的插入、查询、修改和删除。
[0005]在本发明一实施例中,所述数据预处理模块对输入的邮递源地址数据进行去除噪声地址、去除地址中的特殊符号处理,排除无效或是不可识别的地址,然后再由HanLP切词工具将余下的有效地址粗分成词。
[0006]在本发明一实施例中,所述地址标准化模块通过Trie树结构与正则匹配方式对有效地址进行十级地址标准化处理,包括:前四级的标准行政地址的标准化和后六级的详细地址的标准化;通过对标准的四级地址分词构建Trie树,输出Trie树模型并保存到数据库中;对于输入的待分级识别的样本数据,通过分词再导入Tire树模型进行模糊匹配识别出前四级的标准行政地址,而后再导入有限状态自动机进行正则匹配出后六级的详细地址,最后合并输出地址的十级标注。
[0007]在本发明一实施例中,所述前四级的标准行政地址利用识别搜索算法在Trie树中进行识别,所述识别搜索算法按照如下步骤实现:
步骤S1:输入分词后的样本数据地址段;
步骤S2:根节点放入队列;
步骤S3:判断当前队列是否为空;若不为空,转步骤S4;否则转步骤S10;
步骤S4:取出队首元素,并判断其是否有子节点;若有,转步骤S5;否则转步骤S3;
步骤S5:遍历一个子节点,判断子节点的值是否与当前地址段匹配;若匹配,转步骤S6;否则,转步骤S7;
步骤S6:判断当前是否是第一个地址段,并且与之匹配上的是第三级或第四级的地址,若是,将该节点存入一个list中,转步骤S7,否则,转步骤S8;
步骤S7:将当前节点的所有子节点放入队列中,转步骤S9;
步骤S8:判断上一步是否匹配到多个结果,并且与之匹配到的是第四级地址;若是,更新list,转步骤S9;否则,清空当前队列,再将当前节点加入队列,转步骤S3;
步骤S9:判断当前元素是否为最后一个子节点;若是,转步骤S3;否则,转步骤S5;
步骤S10:从list中出地址级别最大的节点,依次向上出其父节点,得到匹配完的前四级结果;
步骤S11:判断以上结果中是否包含null,并且剩余地址段是否存在前四级地址;若是,转S12,否则输出结果;
步骤S12:将剩余地址再次进行树匹配,将再次匹配的结果与原结果进行比较;若再次匹配得到的结果包含了原结果,那么更新这个结果,并输出。
[0008]在本发明一实施例中,所述后六级利用所述有限状态自动机的状态转移规则对地址信息逐层进行正则匹配,得到相应级层地址的地址要素;识别前四级地址后,余下的地址作为初始状态导入有限状态自动机进行后六级正则匹配;当符合路级别的提取规则时,由初始状态转向状态1,状态1匹配到符合路号级别的提取规则时转向状态2,状态2匹配到符合楼号级别的提取规则时转向状态3,状态3匹配到符合单元号级别的提取规则时转向状态4,状态4匹配到符合户号级别的提取规则时转向状态5;无法满足剩余状态提取规则的地址内容作为备注级内容转向状态6,最后转向结束状态,实现后六级的详细地址的识别。[0009]在本发明一实施例中,所述地址补全通过采用基于 SNM算法补全窗口内的不完整地址。
[0010]相较于现有技术,本发明具有以下有益效果:本发明通过结合Trie树与有限自动

本文发布于:2024-09-23 07:18:44,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/421994.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:地址   匹配   模块   状态   进行   识别
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议