我正在寻找多种自然语言处理工具,用于我正在开发的一个项目中,目前我发现斯坦福自然语言处理项目最有用。
有人知道是否有其他工具可供语言理解者使用吗?
更重要的是,是否有缺失在外的工具呢?
最具体地说,我正在寻找一个形态音位分析等方面的API。
编辑:我是一名学术人员(正在进行研究项目的学生),主要寻找开源或至少是开放API项目。
我正在寻找多种自然语言处理工具,用于我正在开发的一个项目中,目前我发现斯坦福自然语言处理项目最有用。
有人知道是否有其他工具可供语言理解者使用吗?
更重要的是,是否有缺失在外的工具呢?
最具体地说,我正在寻找一个形态音位分析等方面的API。
编辑:我是一名学术人员(正在进行研究项目的学生),主要寻找开源或至少是开放API项目。
NTLK 是一个有趣的工具包,允许构建基于自然语言处理的应用程序。这可以用于需要词性标注或实现简单分类器或实体抽取器等实际应用。
我不确定 "language understander" 应用程序会包含什么内容,但这似乎超出了NLTK所能轻松实现的范围。
完整阅读问题及其对形音义学的引用似乎证实了 NLTK 可能无法很好地满足 OP 的需求;据我所知,NLTK 没有处理文本的模块在这个层面上。但您可能需要自己检查一下,因为 NLTK 是一个广泛且活跃的项目,可能在这个领域看到最近的更新。
我想提供一个链接到MontyLingua Python包,可以在这里找到。我认为它使用不同的解析器与nltk不同。
http://www.fslog.com/2008/09/20/montylingua3-gpled-fork-of-montylingua/你可以谷歌一下与nltk的比较。
Maluuba刚刚发布了其自然语言处理器的API,可在http://developer.maluuba.com上获得。
Maluuba为其编写了三个库:
Python库:https://github.com/maluuba/napi-python
Ruby库:https://github.com/maluuba/napi-ruby
Java库:https://github.com/maluuba/napi-java
作为其强大功能的示例,可以使用以下查询来提取信息:
>> client.interpret phrase: 'Set up a meeting with Bob tomorrow \
night at 7 PM to discuss the TPS reports'
=>
{:entities=>
{
:daterange=>[{:start=>"2012-11-15", :end=>"2012-11-16"}],
:title=>["meeting to discuss the tps reports"],
:timerange=>[{:start=>"12:00:00AM", :end=>"12:00:00AM"}],
:contacts=>[{:name=>"bob"}]
},
:action=>:CALENDAR_CREATE_EVENT,
:category=>:CALENDAR
}