Подтвердить что ты не робот

Как использовать вывод синтаксиса

Я начал играть с Syntaxnet два дня назад, и мне интересно, как использовать/экспортировать вывод (дерево ascii или conll) в формате, который легко разобрать (то есть: Json, XML, python graph).

Спасибо за вашу помощь!

4b9b3361

Ответ 1

Прежде чем перейти к дереву ascii (я думаю, вы следуете demo.sh), вход проходит через тегирование и разбор. Удалите последний шаг в конвейере команд.

Ваш измененный файл demo.sh будет выглядеть так: -

PARSER_EVAL=bazel-bin/syntaxnet/parser_eval
MODEL_DIR=syntaxnet/models/parsey_mcparseface
[[ "$1" == "--conll" ]] && INPUT_FORMAT=stdin-conll || INPUT_FORMAT=stdin

$PARSER_EVAL \
  --input=$INPUT_FORMAT \
  --output=stdout-conll \
  --hidden_layer_sizes=64 \
  --arg_prefix=brain_tagger \
  --graph_builder=structured \
  --task_context=$MODEL_DIR/context.pbtxt \
  --model_path=$MODEL_DIR/tagger-params \
  --slim_model \
  --batch_size=1024 \
  --alsologtostderr \
   | \
  $PARSER_EVAL \
  --input=stdin-conll \
  --output=stdout-conll \
  --hidden_layer_sizes=512,512 \
  --arg_prefix=brain_parser \
  --graph_builder=structured \
  --task_context=$MODEL_DIR/context.pbtxt \
  --model_path=$MODEL_DIR/parser-params \
  --slim_model \
  --batch_size=1024 \
  --alsologtostderr \

Затем вы можете запустить: -

$ echo 'Bob brought the pizza to Alice.' | syntaxnet/demo.sh 1>sample.txt 2>dev/null

Результат будет сохранен в файле sample.txt и будет выглядеть так: -

1   Bob _   NOUN    NNP _   2   nsubj   _   _
2   brought _   VERB    VBD _   0   ROOT    _   _
3   the _   DET DT  _   4   det _   _
4   pizza   _   NOUN    NN  _   2   dobj    _   _
5   to  _   ADP IN  _   2   prep    _   _
6   Alice   _   NOUN    NNP _   5   pobj    _   _
7   .   _   .   .   _   2   punct   _   _

Здесь вы можете легко получить информацию о голове каждого слова, частях речи и типе node, разделив данные с помощью \n

Дерево ascii само построено, используя выше.

Ответ 2

Я написал сообщение в блоге, объясняющее, как получить вывод SyntaxNet для любого языка, в Python, в частности, в NLTK, и использовать его для вывода с графами Dependency Graph и Tree.

Вы можете проверить это здесь: http://www.davidsbatista.net/blog/2017/03/25/syntaxnet/

Ответ 3

Я пришел сюда, чтобы найти легенду для выходных частей речи. Он был передан в удаленном ответе, который другие пользователи могут не увидеть.

Части аббревиатур речи, по-видимому, совпадают с Penn Parts of Speech Tags для моих предложений. Цитирование этой таблицы здесь, если страница сходит или изменяется:

  • CC Координационный союз
  • CD Cardinal number
  • Определение DT
  • EX Existential there
  • FW Иностранное слово
  • В предпозиционном или подчиненном соединении
  • Прилагательное JJ
  • JJR Adjective, сравнительный
  • JJS Прилагательное, превосходное
  • LS Элемент списка маркеров
  • MD Modal
  • NN Существительное, единственное или массовое
  • NNS Существительное, множественное число
  • NNP Собственное существительное, единственное
  • NNPS Собственное существительное, множественное число
  • PDT Predeterminer
  • POS Положительное окончание
  • PRP Личное местоимение
  • PRP $Притяжательное местоимение
  • Наречие RB
  • RBR Adverb, сравнительный
  • Наречие RBS, превосходное
  • RP Particle
  • Символ SYM
  • TO to
  • Интерференция UH
  • VB Verb, базовая форма
  • VBD Verb, прошедшее время
  • VBG Verb, gerund или настоящее причастие
  • VBN Глагол, прошедшее причастие
  • VBP Verb, не являющийся третьим лицом сингулярный подарок
  • VBZ Verb, 3-й человек сингулярный подарок
  • WDT WH-определитель
  • WP WH-местоимение
  • WP $Притяжательное wh-местоимение
  • WRB Wh-adverb