nlp - UIMA 只提供一个包装器还是像 StandfordCore NLP 和 GATE 一样?

标签 nlp stanford-nlp opennlp gate uima

Standford Core NLP 和 GATE 提供各种 NLP 操作,如 NER、POS 标记。有一些 NLP 操作(如 Tokenizer、Snowball Stemmer)可作为 UIMA 组件使用。 那么,UIMA 是否可以与 StandfordCore NLP/GATE 相媲美,或者它用于包装管道的此类 API?

最佳答案

核心UIMA框架不提供特定的NLP工具。它提供了从符合 UIMA 的组件构建和运行分析工作流程的方法。由于要分析的数据在实际应用程序中可能会变得非常大,因此 UIMA 注重可扩展性,提供分布式运行时环境,如 UIMA-ASUIMA-DUCC 。然而,UIMA 不仅在大规模上有用,而且还可以将分析嵌入到应用程序中或在科学背景下构建语言处理实验。

有多个提供 NLP 工具的 UIMA 组件集合,通常包装第三方解决方案,例如 OpenNLP、Stanford CoreNLP 等:

  • ClearTK - 用于开发统计 NLP 组件的框架,还包括一些第三方工具的包装器
  • cTAKES - 从电子病历临床自由文本中提取信息
  • DKPro Core - 用于 NLP 的 UIMA 组件集合,包装了许多用于 UIMA 的第三方工具
  • UIMA Addons - UIMA 团队本身提供的一小组组件
  • U-Compare - 集成文本挖掘/自然语言处理系统

这些是撰写本文时的一些主要合集。如果您搜索 UIMA 组件,您可能会找到其他来源。

核心 UIMA 框架与嵌入的 GATE 相当,减去 GATE 提供的开箱即用的任何处理资源。 UIMA Ruta 工作台可以说与 GATE Developer 工作台关系较远,或者更具体地说与 JAPE 关系较远。

UIMA 与斯坦福 CoreNLP 相比效果不佳,因为 UIMA 并不专注于提供特定的 NLP 组件,而 CoreNLP 则专注于提供。

像 CoreNLP 这样的 NLP 工具往往被包装为 UIMA 组件,以便在 UIMA 管道中使用。

像 GATE 这样的框架通常不会包装为 UIMA 组件,但可能会包装作为 GATE 插件提供的特定 NLP 工具。

披露:我从事 Apache UIMA 项目和 DKPro Core 项目。

关于nlp - UIMA 只提供一个包装器还是像 StandfordCore NLP 和 GATE 一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24186742/

相关文章:

python - 在 python 中使用 FST 库

nlp - 自然语言到 Sparql

python - Spacy NLP 库 : what is maximum reasonable document size

parsing - 如何将文本文件转换为麦芽解析器的 CoNLL 格式?

stanford-nlp - 单词可能的词性编号

java - 转换 OPenNLP 错误

java - Android 中的 OpenNLP 获取无效格式输入流

python - NLTK 的 XMLCorpusReader 可以用于多文件语料库吗?

java - TextRank 运行时间

web-services - 将斯坦福 NER 集成到我的应用程序/调用 Web 服务中