Я столкнулся с этой статьей http://swrc.kaist.ac.kr/paper/171.pdf, в которой описывается метод извлечения триплетов из дерева зависимостей. Этот результат я точно хочу. Однако в документе упоминалось, что это «обход дерева отправления». Есть ли какая-либо реализация с открытым исходным кодом для извлечения триплетов? Например, «VRLA проводится в Лос-Анджелесе в 2016 году». должен генерировать "VRLA, проходит в Лос-Анджелесе" и "VRLA, проводится, в 2016 году"Дерево зависимости триплетам
2
A
ответ
1
Вы можете попробовать взглянуть на систему Stanford OpenIE (часть CoreNLP):
new Sentence("VRLA is held at Los Angeles in 2016").openieTriples();
Это должно привести к созданию тройки для (VRLA, состоится в Лос-Анджелесе) и (VRLA, состоится в 2016 году). Дополнительную документацию по использованию можно найти на странице OpenIE Annotator page. В более общем плане, есть несколько систем OpenIE, на которые вы можете взглянуть. Ollie, пожалуй, самый известный из Университета Вашингтона.
OpenIE кажется крайне ограниченным. Я пытаюсь сделать очень похожее на OP - в основном извлекать тройки из текста, но также сохранять всю другую информацию, например, наречия, прилагательные и добавлять их в качестве модификаторов к слову. Но Openford в Стэнфорде действительно не работает. «Я быстро побежал». не вызывает никаких отношений. Существуют ли другие коммерческие лицензионные экстракторы, более надежные, чем у Стэнфорда? Олли выглядит великолепно - но не коммерчески. – abagshaw
Я думаю, что то, что вы описываете, является анализом зависимости. OpenIE будет извлекать тэки предметов/глаголов/объектов и сохранять структуру зависимостей аргументов (из которых вы можете извлекать наречия и прилагательные). Шаг выше этого - это что-то вроде AMR или анализа зависимости. Кстати, «Я бежал быстро» не должен извлекать троек: «быстрый» - это модификатор, а не объект отношения «бежал». –
Верно, моя ошибка. Я полагаю, что он не сможет вернуть двойную версию I-run с быстрым ускорителем. Но не имеет значения. Еще один более сложный пример. «Мои одноклассники были заинтересованы в презентации». возвращает много троек и отлично работает с OpenIE, но когда я меняю его на «Мои одноклассники не интересовались презентацией». просто добавление в не-OpenIE разваливается и ничего не возвращает. Поэтому я согласен с чем-то вроде AMR. Я думаю, это то, что я ищу. Вы знаете какие-либо библиотеки с открытым исходным кодом для AMR для Java? – abagshaw