我使用的是斯坦福解析器的python接口。在做解析工作时,我想跳过长句子。所以我使用:
path1 = '/usr/local/Cellar/stanford-parser/3.4/libexec/stanford-parser.jar'
path2 = '/usr/local/Cellar/stanford-parser/3.4/libexec/stanford-parser-3.4-models.jar'
parser = StanfordParser(path_to_jar = path1, path_to_models_jar = path2, java_options = '-maxLength50')但上面写着:
Unrecognized option: -maxLength50
Error: Could not create the Java Virtual Machine.然后我试着:
parser = StanfordParser(path_to_jar = path1, path_to_models_jar = path2, java_options = '-maxLength=50')上面还写着
Unrecognized option: -maxLength=50不过,以下选项可以很好地工作:
parser = StanfordParser(path_to_jar = path1, path_to_models_jar = path2, java_options = '-mx20000m')但是如果我没有设置句子的最大长度,即使设置了'-mx20000m‘,我也会不断地耗尽内存。所以我想我真的需要跳过一些长句子。
谁能告诉我如何在python中设置'-maxLength‘选项?谢谢!!
发布于 2015-01-21 17:32:38
java选项实际上是JVM的选项,而不是Stanford解析器的选项。您不能设置java选项。
我没有看到在http://www.nltk.org/_modules/nltk/parse/stanford.html中设置maxLen的选项。
在python中如何: if (len(sentence.split())>50: continue
这不是简单多了吗?
https://stackoverflow.com/questions/28028811
复制相似问题