Stanford Parser — обход графа типизированных зависимостей

В основном я хочу найти путь между двумя токенами NP в графе зависимостей. Однако я не могу найти хороший способ сделать это в Stanford Parser. Любая помощь?

Большое спасибо


person pns    schedule 26.04.2010    source источник


Ответы (1)


Stanford Parser просто возвращает список зависимостей между токенами слов. (Мы делаем это, чтобы избежать зависимостей от внешних библиотек.) Но если вы хотите манипулировать зависимостями, вы почти наверняка захотите поместить их в структуру данных графа. Обычно мы используем jgrapht: http://jgrapht.sourceforge.net/

person Christopher Manning    schedule 02.05.2010
comment
Спасибо. На самом деле я использую это для извлечения троек (Subject, Verb, Object) из предложений. Моя идея заключалась в том, чтобы сначала обнаружить сущности в предложении, а затем для каждой пары сущностей найти путь между ними в графе зависимостей, содержащем глагол. Проблема в том, что, хотя это работает в некоторых случаях, в некоторых нет. Например, вот этот: Бумага — это тонкий, плоский материал, созданный сжатыми волокнами. Здесь стэнфордский синтаксический анализатор находит прямое отношение nsubj между бумагой и материалом. Можете ли вы порекомендовать какой-нибудь хороший способ сделать эту тройную экстракцию? Спасибо. - person pns; 02.05.2010
comment
В представлении SD связка (глагол быть) не рассматривается как предикат, скорее существительное или прилагательное рассматривается как предикат: тонкий (бумажный) материал (бумага). См. обсуждение в nlp.stanford.edu/pubs/dependencies-coling08.pdf (раздел 2.2) Но если вы хотите отменить это, вы можете найти зависимость ccop() существительного или прилагательного и переписать ее как be(бумага, тонкая) be(бумага, материал) - person Christopher Manning; 05.05.2010
comment
Привет, не могли бы вы мне помочь, мистер пнс, я хочу сделать то же самое, но я не знаю, как это сделать. - person R.jzadeh; 16.12.2017