首页 > 范文大全 > 正文

基于中文分词的地址匹配技术在警用地理信息系统中的应用

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于中文分词的地址匹配技术在警用地理信息系统中的应用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:通过对基于分词的地址匹配研究,结合重庆市地址名称的特殊性,对分词功能进行了扩展,并进行了词库的建设和索引的优化,并以此为基础在警用地理信息系统中进行了成功的应用。

关键词:分词 地址匹配 警用地理信息系统

中图分类号:TP391.1 文献标识码:A 文章编号:1674-098X(2013)01(b)-00-03

地址匹配也称地理编码,是指将地址映射成地理坐标的过程,是用户输入一个地址串,即可返回其空间坐标,从而在可以将这个地址在地图上进行定位。计算机无法通过文字叙述直接找到目标位置经纬度坐标。

例如,用“重庆市江北区电测村231号”来表示重庆市勘测院的位置,计算机无法从“重庆市江北区电测村231号”获得重庆市勘测院的具体坐标位置。在使用地址匹配时,首先要建立一个标准地址库作为基础,标准地址库包含了门牌地址、地名点等大量地址信息,并按照相应的标准规范进行了整理。地址匹配可以利用该标准地址数据库来建立地址与地理坐标空间的对应关系,将各种兴趣点或文本地址与标准地址数据库进行匹配。

在公安信息化多年的建设过程中,各公安业务单位已经建立了大量的业务应用数据库管理系统,业务数据量非常庞大,以重庆市为例,仅常住人口、重点单位、案发地点、POI等都有上百万甚至于千万条的信息,要将这些信息在地图上进行空间定位,若采用人工手段直接将一条条信息按地址在电子地图上进行标定,将耗费大量的人力、物力而且效果不准确。而地址匹配技术则正是快速实现大量业务数据向空间数据转换的桥梁。结合重庆市地名的特殊性,该文采用全文检索技术结合词库对重庆市地理数据库进行地址标准化,并在此基础上建立起了地址匹配服务。

1 中文分词的实现

分词(Word Segmentation)指的是将一个字符串切分成一个个单独的词。分词是文本挖掘的基础,对于输入的一段文字成功的进行分词,可以达到电脑自动识别语句含义的效果。

基于地址分词的地址匹配是基于地址词库将地址字符串切分不同级别的地址单词,如“重庆市/渝北区/黄龙路/555号/市公安局/”,然后利用分词后的地址要素组成查询条件在标准地址库进行匹配。并返回标准地址库中相应记录的地理坐标。同时在匹配过程中对精准度进行加权计算。基于地址分词的地址匹配实现流程如图1所示。

传统的分词技术包括一元分词,二元分词,多元分词和精确分词等,一元分词和二元分词由于将简单,且效率和精度都不满足需求在此不再赘述。现在让我们看看精确分词和多元分词。如下面这句话:“重庆市龙头寺公园”,精确分词由于不能包含重叠的词,一般可以分成“重庆市/龙头寺公园”,用这种分词结果构建索引,输入龙头寺公园可以搜到,但输入龙头寺就无法搜到。而作为搜索用户,往往需要既能搜到龙头寺也能搜到公园,为了解决这个问题,我们必须对中文句子进行多元分解,即分解出合适的组合,比如上面的句子,如果分解为“重庆市/龙/龙头/龙头寺/龙头寺公园/公园”那么无论我们输入龙头寺、公园还是龙头,我们都可以搜索到这条记录。

多元分词和搜索引擎结合可以得到较多的匹配结果,但同时也增加了索引文件的大小和搜索的时间。另外由于将一些单词进行了拆分,搜索结果的排序会受到影响。比如搜索龙头寺,多元分词后搜索的关键字组合为“龙+头+龙头+龙头寺”,很可能会将只包含“龙”或者“寺”的记录排在包含龙头寺的记录前面,这不是我们希望的结果。

为了解决上述问题,我们引入了分词,分词是一款开源的中文分词系统,他提供了更加准确快速的多元分词和精确分词等类型,并通过控制多元分词的冗余度和多元分词结果的权重级别使分词更加的快速精确。分词支持3级

冗余。

如“重庆市龙头寺火车北站”,首先设置冗余度为1,只分解最佳的地名组合,结果为“重庆市/龙头寺/火车北站/”;控制冗余度为1,地名更加细致,结果为“重庆/重庆市/龙头寺/火车/北站/火车北站/”;控制冗余度为2,分词达到最大细化,但结果也更臃肿“重庆/市/重庆市/龙头/寺/龙头寺/火车/北站/火车北站/”。

虽然通过多元分词配合冗余度能大大的加快索引速度和精确度,但是依然不能满足我们的需求,对应复杂的地名依然是很难对其进行很好的分词,只有通过建立词典,利用词库分词,才能达到速度与精确度双赢的效果。

2 词库建立与优化

词库是中文自动分词的基础,分词词库机制的优劣直接影响到中文分词的速度和效率。分词提供了词库管理接口,该文对其进行了扩展,可以对词库进行批量的增、删、改操作。

2.1 词库内容

在保留字母词库、数字词库和量词词库的基础上添加当地地名地址词库和同义词词库,方位词词库,特殊符号词库等。地名地址词库保存城市特有地名、路名、机构名、小区名、兴趣点(POI)和大地名一些常用城市大地名加入词库,如“龙溪”,“冉家坝”,“黄泥”等词条;同义词词库主要是对常用地址名的缩写进行对比加入,如“重庆大学”对应“重大”,“重庆市动物卫生监督所”对应“市动监所”等;方位词词库主要包含东西南北上下左右等表示方位的词;特殊符号即为不常用的一些文字符号,如“⑨ⅧR”等。

2.2 词库优化

随着地名的增加词库会不断变大,加载到内存的时间也会随之变长。而通用地址库,行政区库和停止词库数据量相对较少,因此我们不将其加入到词库中,而是专门存放到单独的文件中并行加载,从而可以大大减少词库加载的时间,提高了效率。此外,我们还对每个词库中的单词搜索频率赋予了不同的权值,在提高搜索速度的同时也提高了索引的精确度。

2.2.1 行政区词库优化

对于行政区词库,我们将所有区县级行政区名称加入到文该文件中。然后一次性将其读入到内存中,在对地址进行行政区进行判断后,调用相对应的行政区索引文件夹,大大提高了索引的效率。

2.2.2 添加过滤词

过滤词是语言中一些无关紧要的词语,在索引时将被自动忽略。例如在汉字中“的,地,得”等都可以作为过滤词。在大量文本信息中过滤词的使用确实能增加检索的精确度,但是对地名地址分词来说,通常没有这类过滤词。如美的公司、天地集团中的“的”、“地”并非过滤词。所以设计地名地址分词算法时,没有沿用一般的分词算法设计特点,而是有针对性的不过滤掉任何词。对于一些标点符号,连词,助词等有时候需要在分词时过滤掉,分词提供一个的文该文件,用户只要将需要过滤的词添加到这个文件中,并将过滤词开关打开,就可以过滤掉这些冗余词,大大提高了分词的效率。

2.2.3 使用通用地址库

通用地址库主要为一些地名通用词,如“乡、镇、组、社、路、街、巷、弄、园、苑、沱、坝、坪”等。通用词主要用于对词典中有重复的词或是分词后的具有歧义或不准确的一些词进行修复,如“中山三路”并未加入到词典,但是“中山”却在词典中,“三”为数量词,所以自动分词结果为中山/三/路,这时会产生分词冗余,降低了索引的效率和精确度。

这时我们可以对地址进行二次查找,当有单字存在于地名通名词典中时,将其与前面未登录单词合并,形成二次分词。如“路”存在于通用地址库中,这时可以把路和其前面的单词“三”合并,分词结果为中山/三路。由于地名通名词典容量比较小,可单独存放在一个文该文件中,以二进制流的形式遍历效率比较高,而且可以识别大部分具有规律的未登录词,简单易行。

2.3 结果测试

根据上述的算法思想,在汉字词典词条为16万的情况下,加载词典到内存的时间为1031.25 ms,而分词时间几乎可以忽略不计。分词结果如图2所示。

以上分词结果可见,加入词典后明显提高了分词的速度精度。

3 地址匹配在警用地理信息系统中的应用

警用地理信息系统中地址编码服务使用整理过后的标准地址库,并在此基础上,对外提供一个地址匹配的Web Service,即通过输入一个普通的自然语言描述的地址,然后借助该Web Service获取其空间坐标。可以支持批量匹配功能。主要包括如下几个功能。

地址语义分析功能:首先对输入地址信息进行文字整理,对地址信息补全,语句模式纠正,然后把对应地址通过分词功能进行拆分,其中包括二义性处理,通用词补充,停用词过滤等。最终将地址整理成一个结构化的信息对象,方便后续模块和模型进行判断。

地址批量比对功能:通过比对分词后的字符集相似度,通过两个标准地址库的比对结果,判定出两个结构化标准地址库的相似程度,从而为搜索排序奠定基础。利用本系统对公安系统中存在的大量不包含空间位置信息的业务数据进行地址比对,为其添加坐标信息,进过测试,对比成功率达到80%以上。

标准地址库存储功能:通过对分词整理后的标准地址库建立索引,并将该索引优化后存储在一个可快速读写的磁盘中,然后提供一个读写该索引的功能,以多键树形式存储,内涵结构地址比较器,可以随时通过读取索引信息,获取地址数据,在有新的数据进入或修改时可对索引进行快速更新,提供了从标准地址库中快速提取制定数量相关地址的能力。

地址匹配服务功能:提供一个Web Service通过查找地址索引获取标准地址库信息的能力,提供与网络中使用的能力,其依靠TCP/IP(HTTP)协议进行数据访问,依靠XML进行数据信息交互。如图3所示。地址匹配服务管理功能:给用户提供一个可操作的图形界面,用户通过该界面及功能对索引进行添加,更新和删除,随时保持与标准地址库的同步。

4 结语

该文分析了基于组件的地址分词匹配机制,并将其成功应用于警用地理信息系统的建设中,大大提高了地址检索的效率和准确度,并在实际应用中取得了良好的效果。但同时也存在一些亟待解决的问题。如标准地址库中地名不完善或是数据没有及时更新等。针对这些问题一是要严格规范地理编码数据,完善数据采集流程,按标准化进行地理数据入库,对不完整或歧义的地址进行筛选并修改或删除;二是对地址数据录入人员进行培训,以保证数据录入的准确性;三是要建立标准地址库的更新机制,如定时更新索引库,以保持地址库和词典的同步;四是将常用地名词典归纳整理并入库;相信在解决上述问题后,本系统在未来的工作中会发挥越来越大的作用。

参考文献

[1] Clodoveu A,Davis J,Fonseca F T.Assessing the Certainty of Locations Produced by an Address Geocoding System[J].Geoinformatica,2007,11(1):103-129.

[2] 姚盛江,吴洁,李树坤,李荣.地理编码技术及其在PGIS中的实现[J].警察技术,2011(3):14-17.

[3] 马照亭,李志刚,孙伟,等.一种基于地址分词的自动地理编码算法[J].地理与地理信息科学,2011,27(2):59-62.

[4] 分词组件.http://.

[5] 张林曼,吴升.地理编码系统中地址匹配引擎的设计与实现[J].测绘信息与工程,2008,33(6):12-14.