斯坦福corenlp中的默认线程数是多少?具体地,命名实体提取器,然后是信息提取器。此外,我希望两者都使用单个线程进行调试,我该如何设置?
谢谢!
默认值为1个线程。
有两种方法可以在多线程模式下运行Stanford CoreNLP。
1.(每个线程处理一个单独的文档
2.(每个线程处理一个单独的语句
假设你有4个核心。
如果希望每个线程处理一个单独的文档,请使用-threads 4
选项(假设要使用4(。
所以你可以运行这个命令:
java -Xmx14g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner,depparse,coref,kbp -threads 4 -fileList sample-files.txt -outputFormat text
多个注释器可以并行处理句子。下面是一个将命名实体处理器设置为使用多个线程的示例。
java -Xmx14g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner,depparse,coref,kbp -ner.nthreads 4 -fileList sample-filelist-16.txt -outputFormat text
以下注释器可以同时处理多个句子:
name example configuration
depparse -depparse.nthreads 4
ner -ner.nthreads 4
parse -parse.nthreads 4
注意,虽然ner
注释器可以在多线程模式下运行,但它使用了几个不能运行的子注释器。所以你实际上只是在并行地运行统计模型。模式匹配规则模块不在多线程模式下运行。