#stanford-nlp #tokenize #lemmatization #pos-tagger
#stanford-nlp #маркировать #лемматизация #pos-теггер
Вопрос:
Я бы хотел лемматизировать и пометить текст тегом в соответствии с FAQ. Эта команда, представленная в FAQ, работает правильно:
$ java -cp "*:lib/*" edu.stanford.nlp.tagger.maxent.MaxentTagger
-model models/english-left3words-distsim.tagger
-textFile samsawme.txt -outputFormat inlineXML
-outputFormatOptions lemmatize -sentenceDelimiter newline
Вывод:
<?xml version="1.0" encoding="UTF-8"?>
<pos>
<sentence id="0">
<word wid="0" pos="NNP" lemma="Sam">Sam</word>
<word wid="1" pos="VBD" lemma="see">saw</word>
<word wid="2" pos="PRP" lemma="I">me</word>
<word wid="3" pos="." lemma=".">.</word>
</sentence>
</pos>
Однако, если я добавлю -tokenize false
флаг и использую вместо него маркированную версию текстового файла, леммы исчезнут из XML-файла:
Содержимое samsawme_tokenized.txt
:
Sam saw me .
Команда:
$ java -cp "*:lib/*" edu.stanford.nlp.tagger.maxent.MaxentTagger
-model models/english-left3words-distsim.tagger
-textFile samsawme_tokenized.txt -outputFormat inlineXML
-outputFormatOptions lemmatize -sentenceDelimiter newline
-tokenize false # !!!
Вывод:
<?xml version="1.0" encoding="UTF-8"?>
<pos>
<sentence id="0">
<word wid="0" pos="NNP">Sam</word>
<word wid="1" pos="VBD">saw</word>
<word wid="2" pos="PRP">me</word>
<word wid="3" pos=".">.</word>
</sentence>
</pos>
Есть ли какой-либо обходной путь для включения лемм при пометке предварительно маркированного, но не обязательно лемматизированного текста?