Вывод результатов в формате conll (POS-тегирование, тег stanford pos)
Я пытаюсь использовать Stanford POS-tagger, я хочу спросить, можно ли проанализировать (на самом деле достаточно только pos-тега) английский текст и вывести результаты в формате conll. Есть ли такая опция?
Я использую полную версию 3.2.0 Stanford pos tagger
большое спасибо
1 ответ
Когда дело доходит до формата CONLL, я предполагаю, что вы имеете в виду формат задачи CONLL2000:
He PRP B-NP
reckons VBZ B-VP
the DT B-NP
current JJ I-NP
account NN I-NP
deficit NN I-NP
will MD B-VP
narrow VB I-VP
to TO B-PP
only RB B-NP
# # I-NP
1.8 CD I-NP
billion CD I-NP
in IN B-PP
September NNP B-NP
. . O
В формате задачи разделения CONLL есть три столбца:
token
(то есть слово)POS
тегBIO
(начало, внутри, снаружи) тега чанка / фразы
К сожалению, если вы используете тег Stanford MaxEnt, он даст вам только token
а также POS
информация, но не имеет BIO
чанк информации.
java -cp stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTagger -model models/left3words-wsj-0-18.tagger -textFile short.txt -outputFormat tsv 2> /dev/null
Используя указанную выше команду, тег Stanford POS уже дает вам разделенный табуляцией формат, просто без третьего столбца (см. http://nlp.stanford.edu/software/pos-tagger-faq.shtml):
He PRP
reckons VBZ
the DT
...
Чтобы получить BIO
colum, вам потребуется либо:
- статистический чанкер или
- полный парсер
см. http://www-nlp.stanford.edu/links/statnlp.html для списка чункера / парсера, если вы хотите использовать инструменты Стэнфорда, я предлагаю парсер Стэнфорда, но он дает вам формат разбора в скобках, который вам нужно выполнить некоторую постобработку, чтобы перевести ее в формат CONLL2000, см. http://nlp.stanford.edu/software/lex-parser.shtml