【问题标题】:NLP: Language Analysis Techniques and AlgorithmsNLP:语言分析技术和算法
【发布时间】:2011-06-14 12:49:20
【问题描述】:

情况:

我希望对给定文本进行深度分析,这意味着:

  1. 能够提取关键字并根据上下文使用分配重要性级别。
  2. 能够根据表达的情绪得出结论。
  3. 能够提示教育水平(虽然 word 会做一点点,但更自动化)
  4. 能够混​​合搭配短语并找出特定的交流模式
  5. 能够从中提取实质性含义,以便对其进行量化并进行处理以供机器回答。

问题:

为此需要采用什么样的算法和技术?

有什么软件可以帮我做这个吗?

【问题讨论】:

    标签: nlp


    【解决方案1】:

    听起来您可能愿意进行一些实验,在这种情况下,工具包方法可能是最好的?如果是这样,请查看 NLTK Natural Language Toolkit for Python。在 Apache 许可下开源,并且有几本关于它的优秀书籍(包括 O'Reilly 的一本也根据知识共享许可在线发布)。

    【讨论】:

    • 正如 cpfohl 所说,您尝试做的事情很困难。通过一些领域限制和实验,您也许可以做一些有用的事情。
    • 是的,我想是的,这很难。我不知何故把这个问题变成了一个非常笼统的形式。我需要的文本集相当小,使用这些工具包中的任何一个以及一些人工干预都可以。
    • 但后来我考虑了一下并开始将其视为一个单独的具有挑战性的问题,尽管超出了我目前的研究范围。这似乎很有趣,而且似乎还有很多工作要做。 :)
    【解决方案2】:

    当您弄清楚如何执行此操作时,请联系 DARPA、CIA、FBI 和所有其他美国情报机构。此类项目的合同是当前研究项目,价值数百万的研究经费。 ;)

    话虽如此,您需要分层处理它并在每一层进行分析。对于第 2 项和第 3 项,您会发现在 n 元组 (try, 3) 上训练 SVM 会有所帮助。对于 1 和 4,您需要更深入的分析。使用NLTK 之类的工具,或许多其他解析器之一,并在句子和相关词中查找主题词。也使用WordNet(来自普林斯顿) 找出最常用的含义并将其作为关键词。

    5 非常具有挑战性,我认为智能使用上面的数据可以给你想要的,但你需要使用你所有的语法知识和编程知识,它仍然会非常 粗粒度。

    【讨论】: