Примеры сбоя синтаксического анализатора зависимостей

Может ли кто-нибудь дать мне несколько предложений о том, когда происходит сбой синтаксического анализатора зависимостей, почему он не работает и как это исправить?


person arkham knight    schedule 30.11.2018    source источник


Ответы (1)


Рассмотрим следующее предложение:

Песок уже начал просачиваться на дно.

Дерево: (КОРЕНЬ(С(НП(ННП Пески))(ВП(ВБД было)(АДВП(РБ уже))(ВП(ВБН начато)(С(ВП(ТО к)(ВП(ВБ ручеек)(ПП(ВБ в) (НП (ДТ) (НН внизу)))))))) (. . .)))

парсер зависимостей: [nsubj (начало-4, пески-1), nsubj: xsubj (струйка-6, пески-1), aux (начало-4, имел-2), advmod (начало-4, уже-3), корень(КОРЕНЬ-0, начало-4), отметка(струйка-6, до-5), xcomp(начало-4, струйка-6), регистр(низ-9, в-7), дет(низ-9, the-8), nmod:into(струйка-6, нижняя-9), точка(начало-4, .-10)]

Может быть две причины, по которым синтаксический анализатор зависимостей не работает.

1) Здесь слово «пески» является именем собственным во множественном числе (NNPS), но вывод тега POS дает NNP, который является именем собственным, поэтому в теге есть ошибка, которая, в свою очередь, распространяется на парсер зависимостей, поскольку он использует POS для генерации зависимости». Чтобы справиться с этим случаем, вы можете обучить теггер POS предложениям, в которых он терпит неудачу.

2) Контекст предложения может быть совершенно новым для синтаксического анализатора зависимостей, поскольку большинство синтаксических анализаторов, таких как spacy, stanford, nltk и т. д., являются обученными моделями ML, поэтому для обработки этого случая вы можете обучать синтаксический анализатор зависимостей отдельно с новыми предложениями.

вы можете обратиться по этой ссылке, чтобы понять, как обучать POS-теггер и парсер зависимостей: https://spacy.io/usage/training#section-tagger-parser

Надеюсь, он ответит на ваши вопросы.

person Ravikiran    schedule 17.12.2018