Вывод результатов в формате 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 есть три столбца:

  1. token (то есть слово)
  2. POS тег
  3. 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

Другие вопросы по тегам