stanford nlp 3.7.0 和 3.9.2 之间的性能下降

Drop in performance between stanford nlp 3.7.0 and 3.9.2

stanford nlp 版本 3.7.0 和 3.9.2 在 java 之间似乎有性能下降。

我是运行以下管道

props.put("annotators", "tokenize, ssplit, pos, ner, parse, sentiment");

和以下属性

props.put("ner.model",
            "edu/stanford/nlp/models    /ner/english.all.3class.distsim.crf.ser.gz");
props.put("ner.useSUTime", "false");
props.put("ner.applyNumericClassifiers", "false");

当我从版本 3.7.0 升级到 3.9.2 时,我发现 CPU 出现性能峰值和下降。目前没有数字,但似乎慢了大约 5 倍。

我正在解析少量文本。一篇小新闻网站文章。

也许我应该使用不同的模型? 还有其他人注意到这个吗?

编辑: 我注意到 3.9.2 版本加载了 RegexNERAnnotator 的模型数据,但 3.7.0 没有,在日志中看到这个,不确定这是否有影响。

是的,原因是基于规则的 NER 现在默认为 运行。

如果您不想要细粒度的命名实体,可以使用

停用它

props.put("ner.applyFineGrained", "false");