KG2: Learning to Reason Science Exam Questions with Contextual Knowledge Graph Embeddings https://arxiv.org/abs/1805.12393 🕐Когда - 31 марта 2018 👓В чем понт Недавно (2018 год) в мире NLP появилась интересная задачка - AI2 Reasoning Challenge (ARC), смысл которой - научиться отвечать на сложные вопросы из экзаменов, требующие логики. Уметь давать ответы, исходя не просто из контекста, а из сложной логики, важно, чтобы, например, делать действительно умных голосовых помощников, способных не просто поддержать разговор, но и найти решение непростых проблем. В статье авторы предлагают новый метод решения этой задачки на эмбеддингах графов и бьют SOTA. 🔎Подробности 📗О задаче Датасет к задаче представляет собой вопросы и четыре текстовых ответа, из которых только один правильный. Задача разделена на две части. Первая - простая, которая решается классическими методами, анализирующими совстречаемость слов, состоит из вопросов вроде "Какое свойство воздуха измеряет барометр?" (A) скорость (B) давление (C) влажность (D) температура. Для второй, более сложной, уже не хватит знания о том, какие слова встречаются рядом с какими, например в вопросе "Какое свойство минерала можно определить, просто взглянув на него?" (A) блеск (B) вес (C) масса (D) твердость, все варианты ответа находятся в контексте вопроса. 🔧Алгоритм Сначала из текущего вопроса и 4 ответов образуются 4 гипотезы - если вопрос начинается на wh-слова (which, what …), то вместо wh-слова ставится ответ. Если такого слова нет, ответ ставится в конец предложения. После этого с помощью ElasticSearch к каждой из текущих гипотез находится 20 наиболее похожих предложений - это будут наши подтверждения гипотез. Представим гипотезу и ее подтверждения в виде графов. Разобьем гипотезу на три части - объект, субъект и предикат. Например, для предложения "Seed of oak comes from fruit", субъектом будет "seed of oak", обьектом "from fruit", а предикатом - "comes" (пример графов смотри на картинке к посту). Мы должны выбрать тот вариант ответа, гипотеза которого будет наиболее близка к своим подтверждениям (наиболее близка к истине), то есть найти такую метрику расстояния для графов гипотез и подтверждения, что расстояние между истинной гипотезой и ее подтверждениями была минимальной. Для этого получим эмбеддинг каждой вершины в графе, который будет учитывать соседей - засунем в нейронку для каждой вершины признаки ее текста, эмбеддинги соседей и род связи с соседями(субьект, обьект). Модель учится итеративно, эмбеддинги всех вершин последовательно уточняются. Потом найдем вершины в графе гипотез и их подтверждений, вектора которых ближе всего и будет считать функцию от них метрикой расстояния. В результате применения модели авторы обошли предыдущие SOTA на 17.5% 💫Что дальше Модель авторов хороша, но прежнему далека от того, чтобы пройти экзамен - правильные ответы меньше, чем на половину вопросов. Авторы провели анализ случайных вопросов и узнали, почему их скор все еще далек от совершенства. В 51% случаев это оказалось проблемой нехватки информации - по выделенным 20 утверждениям даже люди не смогли ответить на вопрос - нужно выделять информацию лучше и расширять базу знаний, в 12% при построении графа информации происходя ошибки - нужно улучшать алгоритм выделения триплетов, в 21% случаев очень сложная причинность и только в 15% случаев текущая модель авторов теоретически может придти к успеху. 🗒Что на картинке Пример графов для гипотезы и ее подтверждений