stanford postagger 中的错误标记化

bad tokenization in stanford postagger

我正在尝试使用 Stanford POS 标记器来标记一些法语文本。为此,我使用以下命令:

cat file.txt | java -mx10000m -cp 'stanford-postagger.jar:' edu.stanford.nlp.tagger.maxent.MaxentTagger -model models/french.tagger -sentenceDelimiter newline > output.txt

(每行一句话。)

但我注意到标签非常糟糕,真正的问题实际上来自法语标记化本身。我认为标记化是由英语标记器完成的。

所以我试图通过这样做只标记法语文本:

cat file.txt | java -mx10000m -cp 'stanford-postagger.jar:' edu.stanford.nlp.international.french.process.FrenchTokenizer -sentenceDelimiter newline > tokenized.txt

那里的法国代币很好。

如何告诉标注器使用法语模型进行标注,同时还要使用法语分词器?

您可以使用 -tokenizerFactory-tokenizerOptions 标志来控制标记化。 javadoc for MaxentTagger 的 "Tagging and Testing from the command line" 部分包含可用选项的完整列表。

我相信下面的命令会做你想做的事:

java -mx10000m -cp 'stanford-postagger.jar:' \
  edu.stanford.nlp.tagger.maxent.MaxentTagger \
  -model models/french.tagger \
  -tokenizerFactory 'edu.stanford.nlp.international.french.process.FrenchTokenizer$FrenchTokenizerFactory' \
  -sentenceDelimiter newline