Stanford tokenizer从命令行管道输出运行到文件

时间:2015-01-13 14:04:10

标签: java command-line nlp

我已经到处查看以确定是否可以从命令行运行Stanford CoreNLP tokenizer组件并将输出直接传输到文件(就像斯坦福大学一样)中文单词分段)我没有看到任何明确的答案,所以我在这里提出一个独特的问题,这可能吗?如果是这样,怎么样?

我试图使用CoreNLP website上指定的命令,即

java -cp "*" -Xmx2g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner,parse,dcoref -file input.txt 

最后添加>> output.txt的修改,我意识到这是非常简单的,但正如我上面提到的,对于有效的分段器。

这会告诉我有多少令牌作为输出到终端,但是output.txt文件总是空的,为什么呢?也许我可以采用一些替代的管道策略?

理想情况下,我想要的是将所有标记分成输出文件中的不同行。

此时我认为我将不得不编写一个小型Java程序来实现任务,是这样的吗?

1 个答案:

答案 0 :(得分:0)

更新:

就是这样。回答我自己的问题。似乎是对的。只需将解析器添加到类路径中,然后就可以使用命令行中的命令。出于某种原因,它不适用于将CoreNLP添加到类路径中。

我想我需要做的是在我可以从命令行使用它之前将tokenizer放到java CLASSPATH上,这就是-cp在上面的代码中引用的内容。虽然,由于某种原因,我无法坚持下去。这听起来不错吗?