我需要一个工具包(最好用Java或Python编写),可以将英语句子解析成语法树。类似于Charniak解析器。

评论

基于依存关系的分析树可以吗?或者您只想基于基于选区的分析树?

需要基于选区的解析树

相关:stackoverflow.com/a/2703107/1118542

#1 楼

您可以使用Stanford Parser:


免费和开源
用Java编写的
准确性非常接近“最新技术”(无论意味着作为标准基准数据集可能无法反映您的数据)。
包装器还提供其他几种语言,如Python和Ruby。
在线演示

其他软件包。



#2 楼

BLLIP Parser是Charniak-Johnson Parser的当前版本:


免费和开源(Apache 2.0许可)
用C / C ++编写,因此相当快,具有Python和Java绑定

在多个数据集上英语的最新准确性

可用多个解析模型(新闻,生物医学,网络)

完全公开:我是BLLIP Parser的维护者。

#3 楼

可以使用Berkeley解析器:


免费和开源(GPL 2.0许可)
用Java编写,具有Python绑定
最新技术多种语言的准确性
多种语言可用的模型(英语,保加利亚语,阿拉伯语,中文,法语,德语)


#4 楼

语法网:


在TensorFlow中实现
基于http://arxiv.org/abs/1603.06042

提供一个训练有素的英语模型
快速:在现代台式机上大约600字/秒
最新结果

http://googleresearch.blogspot.com/2016 /05/announcing-syntaxnet-worlds-most.html:


在Google,我们花了很多时间思考计算机系统如何读取和理解人类语言以便对其进行处理。以智能的方式。今天,我们很高兴通过发布SyntaxNet与更广泛的社区分享我们的研究成果,SyntaxNet是在TensorFlow中实现的开源神经网络框架,为自然语言理解(NLU)系统提供了基础。我们的版本包括在您自己的数据上训练新的SyntaxNet模型所需的所有代码,以及Parsey McParseface,这是我们为您训练的英语解析器,您可以用来分析英语文本。


自述文件:



#5 楼

链接语法解析器


GPL许可证
用于Java,Python,perl,clisp,ocaml,autoit,node.js的绑定
用C / C ++编写
/>英语的准确性很高
俄语完全支持;一些波斯人;其他语言的原型。


#6 楼

Berkeley Neural Parser(benepar)


MIT许可证
用Python编写
与NLTK或spaCy集成
具有CPU和GPU支持(通过tensorflow)
包括11种语言的模型(英语,中文,德语,巴斯克语,法语,希伯来语,匈牙利语,韩语,波兰语,瑞典语)