斯坦福NLP的默认行为是什么;当把一篇文章分成句子时,是什么意思?

斯坦福NLP的默认行为是什么;当把一篇文章分成句子时,是什么意思?,nlp,stanford-nlp,Nlp,Stanford Nlp,查看,DEFAULT\u BOUNDARY\u REGEX=“\\.\124;[!?]+”让我想到,文本会根据,被分成几个句子和? 但是,如果我将字符串D R E L I N.OK.作为输入传递,例如使用命令行界面: java -cp "*" -Xmx2g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit -file test.txt 它只返回一句话,而不是两句话。为什么?但

查看,
DEFAULT\u BOUNDARY\u REGEX=“\\.\124;[!?]+”
让我想到,文本会根据
被分成几个句子

但是,如果我将字符串
D R E L I N.OK.
作为输入传递,例如使用命令行界面:

java -cp "*" -Xmx2g edu.stanford.nlp.pipeline.StanfordCoreNLP 
             -annotators tokenize,ssplit  -file test.txt

它只返回一句话,而不是两句话。为什么?

但是,只有当这些字符作为自己的标记出现,而不是出现在缩写词(如“etc”)的末尾时,才会在这些字符上拆分。所以这里的问题不是句子拆分器,而是标记器,它认为“N.”是一个缩写,因此没有将“N.”拆分为两个单独的标记。如果您事先知道您的文本不包含任何缩写,那么最简单的方法是在使用CoreNLP处理它们之前,拆分所有结尾包含句点的标记

然后,您的输入将是
drelin。好的。

如果您的输入也包含缩写,那么事情就有点复杂了,因为您必须编辑标记器的规则。有关如何编辑标记器规则的高级说明,请参见“”