V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
maiganne
V2EX  ›  自然语言处理

Python 自然语言分析如何提取特定关键词?

  •  
  •   maiganne · 2017-03-18 16:01:33 +08:00 · 6128 次点击
    这是一个创建于 2840 天前的主题,其中的信息可能已经有所发展或是发生改变。
    V 友们,给一篇文章,里面会出现一些公司的名字,前提是我不知道有哪些公司,请问如何将这些公司的名字提取出来
    18 条回复    2017-09-30 23:25:14 +08:00
    binux
        1
    binux  
       2017-03-18 16:03:51 +08:00 via Android
    公司名是全称还是简称
    实体识别
    maiganne
        2
    maiganne  
    OP
       2017-03-18 16:08:04 +08:00
    @binux 全称简称都没关系,只要能提取出来就行,能稍微说的详细点吗?谢谢
    oisc
        3
    oisc  
       2017-03-18 16:12:38 +08:00
    @maiganne NER 是一个自然语言处理的一个比较大的方向,怎么给你说详细一点。
    binux
        4
    binux  
       2017-03-18 16:14:08 +08:00 via Android
    @maiganne 我问你文本中出现的是全称还是简称
    maiganne
        5
    maiganne  
    OP
       2017-03-18 16:22:47 +08:00
    @binux 哦,全称,有什么 python 库可以实现吗
    binux
        6
    binux  
       2017-03-18 16:24:35 +08:00 via Android
    @maiganne 全称分词,再自己写个规则就行了
    maiganne
        7
    maiganne  
    OP
       2017-03-18 16:26:40 +08:00
    @binux 嗯,谢谢
    ijustdo
        8
    ijustdo  
       2017-03-18 16:51:37 +08:00
    中文处理里面有个 实体识别 就是代词性的分词 然后找到那些 为 机构名词
    ijustdo
        9
    ijustdo  
       2017-03-18 16:59:42 +08:00
    INFO 2017-03-18 16:58:52,236] intxt: 有一个叫一腿有限公司的是个好公司
    INFO 2017-03-18 16:58:52,236] 1:有 /v[-1:HED] 2:一个 /m[7:SBV] 3:叫 /v[7:SBV] 4:一 /m[4:ATT] 5:腿 /n[5:ATT] 6:有限公司 /n[2:VOB] 7:的 /u[2:RAD] 8:是 /v[0:COO] 9:个 /q[10:ATT] 10:好 /a[10:ATT] 11:公司 /n[7:VOB]
    INFO 2017-03-18 16:58:52,236] A1(3, 5): 一 腿 有限公司
    INFO 2017-03-18 16:58:52,236] A0(1, 1): 一个
    INFO 2017-03-18 16:58:52,236] A0(6, 6): 的
    INFO 2017-03-18 16:58:52,236] A1(8, 10): 个 好 公司
    INFO 2017-03-18 16:58:52,236] ------------------------------------------------------------

    看到没有 一腿有限公司 成功识别 当然这个公司是不存在的 呵呵
    maiganne
        10
    maiganne  
    OP
       2017-03-18 17:26:38 +08:00
    @ijustdo 太好了,怎么实现的
    ijustdo
        11
    ijustdo  
       2017-03-18 17:32:03 +08:00
    实体识别 找这个 相关的库 我用的哈工大的库
    ijustdo
        12
    ijustdo  
       2017-03-18 17:33:23 +08:00
    百度的自然语言接口也提供 免费的文本相关的接口 每天有次数限制
    ijustdo
        13
    ijustdo  
       2017-03-18 17:38:48 +08:00
    北大的中文有个撒实验室 也出类似的 其实 就是带 词性的分词 然后再处理 python jieba 分词也带词性分词

    最简单的 你可以先用 jieba 试试 找名词 和机构名词 我要是没记错 jieba 也带新词发现 。。。
    maiganne
        14
    maiganne  
    OP
       2017-03-18 17:47:38 +08:00
    @ijustdo 非常感谢
    maiganne
        15
    maiganne  
    OP
       2017-03-18 18:14:50 +08:00
    @ijustdo 你用的哈工大的库是什么,能在 python 中使用吗?我也想试试
    bxb100
        16
    bxb100  
       2017-03-18 19:56:25 +08:00 via Android
    清华也有个分词的包
    ijustdo
        17
    ijustdo  
       2017-03-18 22:13:19 +08:00
    哈工大 ltp
    kunjinkao
        18
    kunjinkao  
       2017-09-30 23:25:14 +08:00
    找些语料训练个 crf,抽取一下就 ok 了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1002 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 21:14 · PVG 05:14 · LAX 13:14 · JFK 16:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.