我一直在使用ApacheOpenNLP进行一些功能测试,它具有句子检测、标记化和名称实体识别的功能。现在,当我开始查看UIMA文档时,它出现在UIMA主页——“语言识别”上=
这表明我可以使用UIMA完成与OpenNLP相同的任务。两者都有什么附加功能?我是这个领域的新手,请帮助我了解两者的用途和功能视角。
据我所知,您是在询问Apache UIMA和Apache OpenNLP的功能集之间的差异。他们的功能集几乎没有任何共同点,因为这两个项目的目标非常不同。
ApacheUIMA是UIMA规范的开源实现。后者定义了一个概念框架,用于使用结构化元数据增强非结构化信息(如人类产生的自然语言),以便计算机可以使用它。
作为处理非结构化信息的应用程序的示例,让我们以一个以自然语言文本为输入并标记给定文本中所有命名实体的应用程序为例,例如。
Input text = "Bob's cat Charlie is chasing a mouse."
Result = "<NE>Bob</NE>'s cat <NE>Charlie</NE> is chasig a mouse."
要识别此示例中的命名实体(即Bob
和Charlie
),必须执行几个自然语言处理步骤。无需详细说明每个步骤的作用,命名实体识别的假设系统可能涉及以下步骤:
如您所见,此类应用程序可以非常直观地建模为组件序列,这正是UIMA所做的。它将处理无结构信息的应用程序建模为组件管道(在UIMA术语中称为分析)。正如您可以想象的那样,上面列出的许多管道组件都可以用于其他任务,因此UIMA的架构设计强调组件的可重用性。
为了避免混淆,UIMA标准本身没有提供任何特定组件,但为UIM(非结构化信息管理)应用程序定义了一个基础设施,例如工作流、数据类型、组件间通信等。
另一方面,Apache OpenNLP恰恰做到了这一点,即提供处理非常特定任务(句子拆分、POS标记等)的NLP算法的具体实现。您困惑的根源可能是可以编写包装OpenNLP工具的Apache UIMA组件。OpenNLP项目实际上提供了这样的组件。
您是否希望在UIM应用程序中使用UIMA框架取决于项目的大小。如果它很小,我就不使用UIMA,直接使用OpenNLP,因为UIMA相当重,因此只会增加复杂但(对于小型应用程序)不必要的开销。此外,由于它的复杂性,学习如何使用它需要大量的时间。
总而言之,ApacheUIMA和ApacheOpenNLP解决了不同的问题,但由于两者都处理非结构化信息,因此它们可以进行有益的组合。
问题内容: 我只知道一个js库,那就是jQuery。 但是我小组中的其他编码人员正在将AngularJS更改为新项目中的默认库。 我对此一无所知。与jQuery有何不同? 我已经为jQuery中的类似任务完成了一组功能。我还能在AngularJS中使用jQuery吗? 问题答案: Angular 1是一个框架,而Angular 2是一个 平台 。(参考) 对于开发人员,Angular2提供了一
我正在阅读GRPC的解释,这张图很有趣: 传输层是如何工作的?如果是通过网络...为什么叫RPC?更重要的是,这与为服务层实现API的REST(客户机中具有发出http请求的方法的类)有何不同?
一篇关于设置幽灵博客的文章说,使用从本地计算机复制到远程服务器:
问题内容: 我发现docker swarm,kubernetes非常相似,然后有docker这是一家公司,上面两个是docker集群工具。那么,这些工具到底是什么,它们之间的区别呢? 问题答案: 有很多文章可以解释这些差异。简而言之: 两者都试图解决相同的问题-在大量主机上进行容器编排。本质上,这些问题可以按如下方式分解: 在多个主机之间调度容器(考虑资源利用率等) 将容器分组为逻辑单元 缩放容器
我试图擦洗GCC手册页,但仍然没有得到它,真的。 和 有什么区别? 什么时候只用< code>-march,而不是两个都用?有没有可能只是< code>-mtune?
问题内容: JavaEE 7下的Servlet 3.1吗? 哪个版本的eclipse支持servlet 3.1开发? 问题答案: JavaEE 7下的Servlet 3.1吗? Servlet 3.1是JavaEE 7引入的。 Servlet 3.1与Servlet 3.0有何不同? 关于Servlet 3.1的新变化,请阅读Arun Gupta的博客文章:Servlet 3.1的新增功能?-Ja
我不断地重读Docker文档,试图理解Docker和一个完整的VM之间的区别。它是如何提供完整的文件系统、独立的网络环境等而又不那么沉重的呢? 为什么将软件部署到Docker映像(如果这是正确的术语)比简单地部署到一致的生产环境更容易?
问题内容: 我一直在使用Zuul作为边缘服务和API网关。最近,我注意到Spring Cloud Platform发布了Spring Cloud Gateway。这两个网关有什么区别?为什么Zuul不扩展为支持SC-Gateway中的功能?一个新图书馆的总体驱动因素是什么?什么时候应该使用? 问题答案: 我是Spring Cloud Gateway的作者。Zuul使用阻塞API在Servlet 2