0

Is it possible to use multi-threads with Stanford Named Entity Recognizer to increase the run time performance? If so, how to do that?

4

1 回答 1

0

大约几个月前,我正在努力解决同样的问题。我想在使用 Lucene 自定义分析器对其进行索引的同时对大型语料库进行 NE 提取。我解决它的方法,这可能是也可能不是你正在寻找的,是使用生产者/消费者构造。我有 N-4 个线程读取文档并以循环方式将其发送到系统上的三个命名管道之一。三个管道的接收端是 stanfordNER 在 Rest 部署表单中的实例,它们都加载了相同的模型。

代码是 python + 多处理。我会发布代码,但它有太多我需要清理的项目特定的东西。

这里有一些资源指针。NER 部署 https://github.com/dat/stanford-ner/blob/master/ner-deploy.sh 多处理 http://docs.python.org/2/library/multiprocessing.html

PS:N 是您的系统可以运行的线程总数。
请记住,在我的情况下,我对系统的内存没有任何限制,因为我有足够的可用内存(大约 70GB)所以在同一个系统上加载三个 NER 实例对性能没有太大影响降解。

于 2013-08-04T21:40:54.050 回答