DQinYuan / chinese_province_city_area_mapper

一个用于提取简体中文字符串中省,市和区并能够进行映射,检验和简单绘图的python模块
MIT License
1.65k stars 392 forks source link

关于作者的CPCA模块基于jieba实现分词造成很多分词错误的修改建议! #61

Open windf17 opened 4 years ago

windf17 commented 4 years ago

建议作者试试pkuseg分词,我也在做处理大量模糊地址的工作,发现jieba分词错误率很高且速度慢,对比下来pkuseg速度快很多,还有多进程对文件分词的国内。经测试,在win10环境4核cpu、16g内存,对25738k大小419328行的地址文件4进程进行分词耗时70秒,如果是linux环境速度更快。 另外我使用pkuseg分词的时候导入了自定义字典,字典中存放了8万8千多条地名信息,包含所有省、市、县一级的地名全称及简称,包含大部分乡、村、镇、路名信息,现分词情况只有公司名、小区名处理得不是很理想,但是对于准确识别出省市县名基本没有出过问题。 pkuseg会出现很多陌生字信息拆成单字的情况,但是由于自定义字典的关系,省市县一级基本上不会搞错,也不会发生省市县级的信息不拆分处理的情况。对于地址中出现的单字和数字很容易加条件予以过滤掉,只解析地址中的省市县名的话使用pkuseg准确率和速度会比jieba高很多、快很多。

最后附一些分词示例: 四川省成都市武侯区晋阳路17号2-1-14-1401号 深圳市南山区深南大道9028号益田假日广场B1层物管中心 广东省深圳市南山区沙河新塘村三坊25号 广东省深圳市南山区蛇口山海经花园A栋C单元18C08 江苏省宿迁市沭阳县龙庙镇龙庙村九组140号 内蒙古省呼伦贝尔市陈巴尔虎旗宝日希勒富士图片社室(号) 黑龙江省齐齐哈尔市龙沙区紫金华府公园天下7号楼1单元402 湖北省荆州市荆州区长江大学南校区工程技术学院 黑龙江省双鸭山市尖山区一马路集星社区拐坝楼1单元602室 陕西省汉中市滨江新区 桃园新城26号楼2单元 陕西省汉中市汉台区七里办事处三组(新桥东)室(号) 广东省从化神岗镇赤草村从化组铌冶炼厂

四川省 成都市 武侯区 晋阳 路 17号 2-1-14-1401 号 深圳市 南山区 深南大道 9028 号 益田 假日 广场 B1 层 物管 中心 广东省 深圳市 南山区 沙河 新塘村 三坊 25号 广东省 深圳市 南山区 蛇口 山海经 花园 A栋C 单元 18C08 江苏省 宿迁市 沭阳县 龙庙镇 龙庙村 九 组 140 号 内蒙古 省 呼伦贝尔市 陈巴尔虎旗 宝日 希勒 富士 图片 社室 ( 号 ) 黑龙江省 齐齐哈尔市 龙沙区 紫金 华府 公园 天下 7 号楼 1 单元 402 湖北省 荆州市 荆州区 长江 大学 南校区 工程 技术 学院 黑龙江省 双鸭山市 尖山区 一马路 集星 社区 拐坝 楼 1 单元 602 室 陕西省 汉中市 滨江新 区 桃园新 城 26 号楼 2 单元 陕西省 汉中市 汉台区 七里 办事处 三 组 ( 新桥 东)室 ( 号 ) 广东省 从化 神岗 镇 赤草村 从化 组铌 冶炼厂

windf17 commented 4 years ago

如果有需要作者可以加我qq40859419,相互交流、探讨。

DQinYuan commented 4 years ago

感谢建议

mapleflow commented 3 years ago

无法正确提取 上海市浦东新区东明路街道三林路15号 贵州省黔南布依族苗族自治州长顺县长寨街道和平中路28号

DQinYuan commented 3 years ago

最新版本已经改成了基于 AC 自动机 + 从大区划向小区划匹配的规则。可以解决 issue 中的不少错误用例

alexlausz commented 3 years ago

请问作者 @DQinYuan 对于 issue #70 有临时的解决办法吗?