首页 > 解决方案 > NLTK 中最高效的解析器?

问题描述

我在 NLTK 中找不到一个解析算法,它在用大语法实例化时在合理的时间内解析一个句子(在 Penn Treebank 的 20 多个文件 ID 上进行训练导致解析需要几分钟或更长时间,具体取决于解析算法)。我正在使用整个树库进行训练 - 所有 ~ 2,400 个文件 ID - 所以每个句子这么多时间是不可行的,因为我试图解析树库的整个测试集(文件 ID 2,300 - 2,399)。

到目前为止我尝试过的算法包括:

如果有任何算法可以在对大型语法进行训练时快速解析(即使它不包含在 NLTK 库中),我将不胜感激能指出这个方向。

我知道 CoreNLPParser 模块,但是据我所知,这只能用已经加载的语法调用,这不符合我的要求,因为我正在寻找一种算法来评估 Penn Treebank 测试集,因此需要决定算法使用的语法的能力。

标签: pythonnlpnltkparse-tree

解决方案


您可能想试试 Benepar(伯克利神经解析器

它具有 MIT 许可证并与 NLTK 或 spaCy 集成。语言支持包括:英语、汉语、德语、巴斯克语、法语、希伯来语、匈牙利语、韩语、波兰语、瑞典语


推荐阅读