V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hunk
V2EX  ›  程序员

对内容分词提取的关键字用神经网络进行学习,是否可行?

  •  
  •   hunk · 2016-05-28 23:34:43 +08:00 · 3997 次点击
    这是一个创建于 3100 天前的主题,其中的信息可能已经有所发展或是发生改变。

    正在做的,对文章标题分析,提取关键字,但关键字肯定是已经在标题中存在的,设想自行维护一个列表,可以自由扩充,但仍需要人工参与,与其这样,还不如人工提取关键字。

    进而想到神经网络这高深的科技,是否有解决类似问题的可能? 个人经验有限,或许有更好的技术解决类似问题,请赐教。

    18 条回复    2016-05-31 20:43:35 +08:00
    theFool
        1
    theFool  
       2016-05-28 23:39:17 +08:00
    tf-idf ?
    hunk
        2
    hunk  
    OP
       2016-05-28 23:43:58 +08:00
    @theFool 忘记说了,测试过用结巴分词,其中有 TF-IDF 和 TextRank 取关键字, TextRank 效果比较好,在添加了用户字典后,对 TextRank 无任何影响,倒是 TF-IDF 不错。
    但问题很明显,仅仅是在分析的文本中抽取关键字。

    我想实现的是这样,提到“监控”这名词,能联想到“摄像头,光纤,交换机”等一系列相关词组,人工定义也可以,只是工作量不小。
    theFool
        3
    theFool  
       2016-05-28 23:48:28 +08:00
    @hunk word2vec 取相似词之类?感觉这个受语料库的影响比较大啊。
    (我也不懂, 瞎 bb 的。
    hunk
        4
    hunk  
    OP
       2016-05-28 23:52:35 +08:00
    @theFool 谢谢,瞅瞅,只要能自定义库就好,慢慢修正嘛。
    pimin
        5
    pimin  
       2016-05-28 23:53:01 +08:00 via Android   ❤️ 4
    用高射炮打蚊子是否可行?
    我觉得是成本和操作上都把简单的问题复杂化了。
    我给楼主提个思路:
    提取关键词之后,访问关键词的 wikipedia , Google 搜索前 20 条内容进行关键词放大提取。
    spider82
        6
    spider82  
       2016-05-28 23:57:05 +08:00
    不懂,不知道是不是和专家系统或问答社区关联相似问题用的技术类似。
    alexapollo
        7
    alexapollo  
       2016-05-29 00:19:49 +08:00
    word2vec 直接就可以解决这个问题
    hunk
        8
    hunk  
    OP
       2016-05-29 00:29:30 +08:00
    @alexapollo 谢谢,正在看。
    h4x3rotab
        9
    h4x3rotab  
       2016-05-29 02:33:23 +08:00 via iPhone
    @alexapollo 请假 w2v 如何解决这个问题
    binux
        10
    binux  
       2016-05-29 04:26:26 +08:00
    1. 需求不明确,「监控」联想到「摄像头,光纤,交换机」和关键字抽取有什么关系?联想是联想,抽取是抽取。
    2. 你有训练数据吗?
    hunk
        11
    hunk  
    OP
       2016-05-29 15:17:15 +08:00
    @h4x3rotab 分词,让 w2v 学习,生成自己的词库。正在实验。
    srlp
        12
    srlp  
       2016-05-29 16:56:35 +08:00 via iPhone
    哈哈, word2vec
    hunk
        13
    hunk  
    OP
       2016-05-30 08:18:06 +08:00   ❤️ 1
    继续请教 word2vec 用法。
    我想将文章的标题和内容作为学习的字典, gensim 示例中字典是 list 格式,我将一篇文章标题和内容的分词放在 list ,是否增加其相关性?

    c 版本似乎是采用 tab 和空格分隔,是否也存在换行的问题?
    h4x3rotab
        14
    h4x3rotab  
       2016-05-30 09:40:36 +08:00 via iPhone   ❤️ 1
    @hunk w2v 没有分词之前本身不能不能用,分词了之后再喂给他我也想象不出来有什么用
    hunk
        15
    hunk  
    OP
       2016-05-30 18:52:27 +08:00
    @h4x3rotab 不分词不能用,分词了关联性小,是这意思不?
    那该如何用呢,原以为,在同一行能让 w2v 认为关联性更高呢。
    h4x3rotab
        16
    h4x3rotab  
       2016-05-30 21:16:34 +08:00 via iPhone
    @hunk w2v 是要先把文章分词,然后把所有词都交给它,他会给每个词训练出一个向量表示,而且相似的词的向量会相似。所谓相似的词,其实是指一对词,他们所出现的上下文相似。所谓向量相似,就是说它们的夹角小,或者欧式距离小。所以说,如果你还没认出这个词,就没法分词,也就没法去算相似度了。
    hunk
        17
    hunk  
    OP
       2016-05-31 19:43:46 +08:00
    @h4x3rotab 还是要先分词才行啊,你最后一句“分词了之后再喂给他我也想象不出来有什么用”让我以为不要分词呢。

    我的疑问是,一篇文章的标题和内容,我分词以后,存为一行,希望 w2v 能认出其相关度。

    不知用法上是否正确?还是不需要换行,罗列所有分词,成他自己学习,而不加以引导。
    h4x3rotab
        18
    h4x3rotab  
       2016-05-31 20:43:35 +08:00 via iPhone
    @hunk 认出不同标题的相关度还是认出每个词的相关度?后者很直观,运行完了之后算向量相似度就好了,前者就有很多技巧,一种简单的做法就是标题所有词的向量求平均,再计算相似度
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2668 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 05:16 · PVG 13:16 · LAX 21:16 · JFK 00:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.