【发布时间】:2015-07-03 00:24:45
【问题描述】:
在 UIMA 中,CAS(通用注释结构)在构建 NLP 应用程序时发挥着重要作用。它允许将一个组件添加到下一个组件中的元数据传递。例如,来自句子分词器的句子边界可以添加到 CAS 并由后续的词分词器使用。
NLTK中等价的数据结构是什么?
【问题讨论】:
在 UIMA 中,CAS(通用注释结构)在构建 NLP 应用程序时发挥着重要作用。它允许将一个组件添加到下一个组件中的元数据传递。例如,来自句子分词器的句子边界可以添加到 CAS 并由后续的词分词器使用。
NLTK中等价的数据结构是什么?
【问题讨论】:
简而言之,NLTK 中没有与 CAS(通用分析系统)等效的概念。后者使用比 UIMA 更简单的方式来表示文本。在 NLTK 中,texts are simply lists of words,而在 UIMA 中,您将非常复杂(和重量级)的数据结构定义为 CAS 的一部分,用于描述输入数据及其在 UIMA 系统中的流动。
话虽如此,我认为它们两者的用途完全不同。如果我要为 NLTK 命名一个 Java 等价物,我会选择 OpenNLP toolkit 而不是 UIMA。前者提供了许多基于机器学习的 NLP 算法(如 NLTK 等),而后者是一个基于组件的框架,不仅适用于 NLP,而且通常适用于非结构化数据。也就是说,它定义了一个通用模型,用于构建处理非结构化数据的应用程序。
【讨论】: