Отношения, не опосредованные существительными, не найдены в OpenIE

У меня возникли трудности с извлечением отношений, опосредованных существительными, как описано в Angeli et al.

Когда я запускаю OpenIE локально с вводом «Президент США Барак Обама отправился в Индию в понедельник», извлекаются только две связи:

  • (Президент США Барак Обама, путешествовал, понедельник)
  • (Президент США Барак Обама, поездка в Индию)
  • Не найдено, но ожидается: (Барак Обама, президент США)

Однако, когда я запускаю тот же ввод на http://corenlp.run/, эта третья связь выглядит извлеченной. Что еще более интересно, если я удалю «Именованные сущности» в качестве возможного аннотатора из corenlp.run, эта третья связь больше не будет найдена.

Итак, я думаю, мой вопрос заключается в том, какая правильная конфигурация (версии, модели, аннотаторы...) необходима для правильного извлечения отношений, опосредованных существительными? На моем локальном компьютере я загрузил v3.6.0, скомпилировал последний исходный код из ветки Master на GitHub, а затем заменил stanford-corenlp-3.6.0.jar ранее скомпилированным файлом jar. Затем я выполнил следующую команду из папки v3.6.0:

java -mx1g -cp "*" edu.stanford.nlp.naturalli.OpenIE -format ollie

Любая помощь или понимание будет большой помощью. Спасибо большое!


person markrs4    schedule 07.10.2016    source источник


Ответы (1)


Таким образом, текущая эвристика в системе OpenIE для извлечения этих взаимосвязей состоит в том, чтобы извлекать их только при наличии информации об именованных объектах (которую мы отключаем по умолчанию для повышения скорости), или же мы резко преувеличиваем их количество. Вы можете принудительно включить их с флагом -triple.all_nominals, но вас предупредили :). Другой простой вариант — установить флаг -resolve_coref, который (1) запустит и разрешит кореференцию при создании троек, а также (2) неявно запустит аннотатор NER. Последний вариант — указать аннотаторы напрямую для включения NER:

java -mx1g -cp "*" edu.stanford.nlp.naturalli.OpenIE -annotators "tokenize,ssplit,pos,lemma,depparse,ner,natlog,openie" -format ollie

Наконец, если вы используете версию 3.6.0, она уже устарела. Вы, вероятно, получите лучшие результаты от HEAD репозитория GitHub — это примерно то, что отслеживает corenlp.run.

person Gabor Angeli    schedule 08.10.2016
comment
Потрясающий! Я включил шаг для выполнения NER и теперь извлекаю отношения, опосредованные существительными. Благодарим за помощь @GaborAngeli! - person markrs4; 09.10.2016