Как разобрать неоднозначное предложение с помощью CYK? - PullRequest
0 голосов
/ 19 апреля 2019

Я пытаюсь понять алгоритм CYK, но когда у меня есть неоднозначные предложения, это вызывает у меня проблемы. Также я не совсем понимаю, как определить начальное состояние разных слов. Например, данный глагол «забыл» может быть как VP , так и v ?

Я пытаюсь разобрать предложение: «Я забыл сумку с ракетками, которые я купил вчера», что можно понять двумя способами в зависимости от того, какую часть предложения yesterday описывает. Это можно понимать как:

  1. Он купил сумку с ракетками, но вчера забыл их (вчера описывает "забыл")
  2. Вчера он купил сумку с ракетками, но забыл их (вчера описывает "купил")

До сих пор я пытался использовать следующую грамматику:

S   ->  NP VP
NP  ->  det n
NP  ->  NP PP
VP  ->  v NP
VP  ->  VP PP
PP  ->  prep NP

со следующим словарем:

det  ->  a
NP   ->  I
n    ->  rackets | bag
NP   ->  which (very much in doubt about this one)
prep ->  of | yesterday
VP   ->  forgot | bought
v    ->  forgot | bought

Я также сомневаюсь в VP s. Мой учитель показал мне несколько предыдущих примеров, где, например, слово saw могло бы быть и VP и V , и я не совсем понимаю, когда что использовать.

Я попытался пропустить предложение: «Я видел девушку с телескопом», которое я правильно анализирую и получаю тот же результат, что и мои слайды: a busy cat но я до сих пор не знаю, как определить зеленые линии и красные линии в другом предложении и, таким образом, определить неоднозначность.

Может кто-нибудь объяснить мне алгоритм CYK с примерами выше?

...