这里主要是基于规则的新闻地域提取方法,这里简要记录一下思路。

首先我们拥有了地域信息数据库,并且标注了省市的layer层信息。主要思路是利用nlp库,分词得到标有地名属性词,在于地域数据库匹配。


第一步,提取正文分词得到标注为地名的词语。

第二步,匹配地域数据库。

按照数据库的分类有

省:一级

市:二级

区、县:三级


算法伪代码:code指当前城市的key,pcode则是其上级城市的key。

case1
:只出现一个,地域。->列出所有可能的<code,pcode> 例如只出现朝阳,则列出<朝阳,辽宁>,<朝阳,北京>

? ?如果,分词出现,朝阳,北京,南京。则结果为<北京-朝阳> <江苏-南京>。

case2:多地域。

for1 依次循环遍历地域信息列表。

按照出现最多的地域,依次列出<code1,pcode1>,<code2,pcode2>.....

for2 循环所有的code1...code2...

if (其它有地域的code等于此pcode) ? ?

则列出<code,pcode>。根据此pcode,查找ppcode.

当下次for1循环遍历到此pcode的时候,continue略过。

此过程会产出"code->code->code"格式 (为目表类型)。

else ?

列出自身code,pcode。


项目中使用了FudanNLP做的地名抽取换成其它库也ok,最终效果正确率90%以上。

dawei

【声明】:北京站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。