Keyword/keyphrase 从文本中提取

Keyword/keyphrase extraction from text

我正在做一个项目,我需要从文本中提取 "technology related keywords/keyphrases"。比如我的文字是:

"ABC Inc has been working on a project related to machine learning which makes use of the existing libraries for finding information from big data."

提取出来的keywords/keyphrase应该是:{机器学习,大数据}。

我的文本文档存储为 MongoDb 中的 BSON 文档。

执行此任务的最佳 nlp 库(具有足够的文档和示例)是什么?如何执行?

谢谢!

看来您不仅需要缩小 keywords/key 个词组的范围,还需要找到每个句子的主语和宾语。 对于 subject/object 识别,我推荐 Stanford Parser 或 Google 语言 API,您可以在其中发送一个字符串并获得依赖树响应。

您可以先测试 Google API 看它是否适用于您的语料库:https://cloud.google.com/natural-language/

这里的结果是一个主题谓词对象 (SPO) 三元组,其中您的谓词描述了关系。您需要遍历依赖关系图并编写脚本来解析三元组。

其他套餐: 我经常使用 NLTK、Spacy 和 Textblob。如果语料库简单、通用且直接,Spacy 和 Textblob 在 OOTB 中运行良好。如果语料库是高度自定义的,domain-specific,凌乱(拼写或语法不正确)等。我将使用 NLTK 并花更多时间通过清理、词形还原等自定义我的 NLP 文本处理管道。您可能需要添加您自己的技术相关关键字和关键短语的自定义词典,以便您的解析器可以在您决定使用这些软件包之一时捕获这些。

NLTK 教程:http://www.nltk.org/book/

Spacy 快速入门:https://spacy.io/usage/

Textblob 快速入门:http://textblob.readthedocs.io/en/dev/quickstart.html