我正在做一个项目,我需要从文本中提取“与技术相关的关键词/关键词”。例如,我的案文是:
"ABC公司一直致力于一个与机器学习相关的项目,该项目利用现有的库从大数据中查找信息。
提取的关键字/关键字应该是:{机器学习,大数据}。
我的文本文档以BSON文档的形式存储在MongoDb中。
有哪些最好的nlp库(有足够的文档和示例)来执行这项任务,以及如何执行?
谢谢!
发布于 2018-03-13 21:03:38
看起来,你需要缩小范围,不仅仅是关键字/关键短语,还要找到每句话的主语和宾语。对于主题/对象识别,我建议使用Stanford或,其中您发送一个字符串并获得一个依赖树响应。
您可以首先测试Google,以确定它是否与您的语料库:https://cloud.google.com/natural-language/很好地工作。
这里的结果是一个主题谓词对象(SPO)三重奏,其中您的谓词描述了关系。您需要遍历依赖关系图并编写一个脚本来解析三胞胎。
其他包:我经常使用NLTK、Spacy和Textblob。如果语料库简单、通用、直截了当,Spacy和Textblob就能很好地运行OOTB。如果语料库是高度定制的、特定领域的、凌乱的(拼写错误或语法)等等。我将使用NLTK,并花费更多的时间使用擦除、符号化等方法定制我的NLP文本处理管道。您可能需要添加您自己的技术相关关键字和关键短语的自定义字典,以便如果您决定使用这些包之一,解析器就可以捕获它们。
NLTK教程:http://www.nltk.org/book/
空间快速启动:https://spacy.io/usage/
Textblob:http://textblob.readthedocs.io/en/dev/quickstart.html
https://stackoverflow.com/questions/49263374
复制相似问题