Поиск по сайту Поиск

Учим нейросети рассуждать о том, что они видят

Ребёнок, который никогда не видел розового слона, всё равно может его описать, в отличие от компьютера. Способность обобщать информацию и рассказывать о том, чего не наблюдал раньше, даётся машинам очень нелегко. Системы Deep Learning работают только со статистическими закономерностями. Но что, если попробовать обучить их с помощью абстрактного или символического программирования? В этой статье мы расскажем об исследовании учёных из MIT об объединении статистического и символического ИИ.

Люди способны сравнивать отношения между объектами и по-разному интерпретировать их свойства. Рассмотрим первый пример, показанный на рисунке ниже.

Представьте, что человек совсем не знает цветов. Ему дают изображения с красными и зелёными кубиками, а также соответствующими вопросами и ответами. Он может легко определить разницу во внешнем виде объектов (в данном случае отличить цвет) и правильно сопоставить их с нужными словами (красный и зелёный). Другие свойства, например, форму, можно изучить аналогичным образом. Обладая этими знаниями, люди легко могут запомнить множество соответствий между визуальной информацией и семантикой слов (второй пример на рисунке), а также решать сложные композиционные задачи по зрительным подсказкам (третий пример).

Основываясь на этой концепции, исследователи из MIT создали нейро-символическую сеть (neuro-symbolic concept learner, NS-CL), которая одновременно изучает визуальное восприятие и анализирует семантику слов на основе изображений и пар «вопрос-ответ». NS-CL состоит из трёх модулей. Первый — нейронный модуль восприятия, извлекающий представление об объекте из фотографии. Второй — семантический анализатор для перевода вопросов в исполняемые программы, и третий — символический исполнитель этих программ, который классифицирует свойства и отношения между объектами и обрабатывает ответ на вопрос.

Нейросеть учится в следующем порядке: сначала осваивает отдельные представления об объектах на основе коротких вопросов, а затем — более сложные отношения между несколькими предметами. Это позволяет ей в дальнейшем интерпретировать новые композиции и вопросы к ним. 

Нейро-символическое обучение

Рассмотрим работу каждого модуля нейросети. Как показано на рисунке ниже, модуль восприятия находит объекты на фотографии и извлекает скрытое глубокое представление каждого из них. Для этого используется предварительно обученная нейросеть Mask R-CNN. Ограничивающие параллелепипеды вокруг каждой фигуры вместе с исходным изображением затем отправляются в ResNet-34 для извлечения признаков цвета, формы и расположения.

Модуль семантического анализа переводит исходный вопрос в программу на предметно-ориентированном языке (domain specific language, DSL) для VQA (Visual Question Answering). DSL охватывает набор основных иерархичных операций для визуальных признаков, например, фильтрацию объектов с определёнными свойствами или запрос атрибута. Интерфейс ввода и вывода у всех операций одинаков, поэтому их можно комбинировать для создания программ любой сложности.

Последний модуль, исполнитель программы, выполняет её на основе полученного представления и отвечает на вопрос. Этот модуль имеет полностью дифференцируемую конструкцию по отношению к визуальным и концептуальным представлениям и поддерживает градиентную оптимизацию во время обучения.

Эксперименты

NS-CL позволяет:

  1. изучать визуальные свойства объектов с высокой точностью;
  2. эффективно выполнять визуальные рассуждения на наборе данных CLEVR;
  3. обобщаться на новые свойства, композиции и текстовые описания.

Нейросеть обучалась на 5 тыс. изображениях (менее 10% от обучающей выборки CLEVR). Для каждого из них генерировалось 20 вопросов. Mask R-CNN была обучена на 4 тыс. изображений CLEVR с примечаниями для ограничивающих параллелепипедов.

NS-CL просматривает фотографии и читает пары «вопрос-ответ», одновременно изучая как визуальные свойства объектов (цвет, форму, размер), так и семантический анализ слов. Результаты оценки нейросети на тестовой выборке CLEVR приведены в таблице ниже. Модель достигает высокого уровня эффективности по сравнению с другими похожими архитектурами — MAC и TbD. Эти нейросети основаны на модели внимания, и для систематического изучения были реализованы четыре их варианта. TbD-Object и MAC-Object вместо одного изображения принимают в качестве входных данных стек объектов, а TbD-Mask и MAC-Mask объединяют маски предметов и с их помощью направляют внимание по изображению.

NS-CL достигает наилучших результатов, поскольку она полностью связывает между собой обучение визуальным свойствам и основанным на них рассуждениям.

Обобщение на новые композиции

Для оценки способности моделей обобщаться на изображения с новыми композициями используется датасет CLEVR-CoGenT. Он состоит из двух выборок: набор А содержит только серые, синие, коричневые, жёлтые кубы и красные, зелёные, фиолетовые и голубые цилиндры, а в наборе В все эти цвета для кубов и цилиндров противоположны. Если визуальные свойства будут изучены только на выборке А, то получится, что модель станет просто классифицировать форму по цвету. Это приведёт к плохому обобщению для выборки В. 

Исследователи решили проблему, введя идею восприятия свойств предметов в виде операторов. В частности, они совместно обучали сеть свойствам объектов (например, «красный», «куб» и т. д.) и семантике слов, сохраняя при этом предварительно изученные операторы. Поскольку модель получает совершенно разные представления для разных свойств, она достигает точности 98.8% для выборки А и 98.9% для выборки В.

Обобщение на новые изображения и вопросы

Человек может посмотреть на небольшое изображение с несколькими объектами, изучить простые вопросы и ответы к нему, а затем легко обобщить полученные знания для крупных сцен с множеством объектов (сцена — это обстановка, то есть совокупность всех объектов на снимке). Чтобы получить такой же результат для нейросети, исследователи разбили набор данных CLEVR на четыре части: 

  1. выборка А содержит только сцены с менее чем 6 объектами и простыми вопросами
  2. выборка В содержит сцены с менее чем 6 объектами, но произвольными вопросами
  3. выборка С содержит произвольные сцены с простыми вопросами
  4. выборка D содержит произвольные сцены и вопросы.

На рисунке ниже показаны примеры образцов:

Для обучения использовались только данные выборки А, а для оценки — остальные три набора. NS-CL добивается очень хорошего обобщения для больших сцен и сложных вопросов, достигая точности в 97%.

Также авторы проверили обобщаемость модели на наборе данных Minecraft reasoning dataset, в котором собрано множество скриншотов из игры. Датасет очень сильно отличается от CLEVR: изображения выглядят иначе, и к ним задаются вопросы совершенно других типов. Тем не менее, модель NS-CL достигла на нём 93.3% точности.

Пример выполнения семантического разбора для ответа на вопрос

Обобщение на естественные изображения и текст

Далее авторы провели эксперименты на изображениях MS-COCO и представили результаты в наборе данных VQS. Он содержит подмножество фотографий и вопросов к ним из исходного датасета VQA 1.0. Все вопросы могут быть визуально обоснованы: каждый из них связан с несколькими областями изображения, содержащими ответ. Пример показан на рисунке:

Для извлечения DSL-программ из изображений используется синтаксический анализатор. Вопросы и характеристики объектов извлекаются из моделей, предварительно обученных на наборах данных MS-COCO и ImageNet соответственно. Нейросеть MAC решает эту задачу с точностью 46.2%, NS-CL достигает точности 44.3%. На рисунке ниже показаны примеры изученных визуальных свойств, включая категории объектов, атрибуты и отношения между ними:

Что дальше?

Хотя модель NS-CL достигает хорошей точности в изучении визуальных сцен и обобщении результатов на новые композиции, на этом её возможности не исчерпываются. Исследователи планируют обучить её описанию трехмерных объектов, а также перевести предметно-ориентированные команды в обработку естественного языка (как можно было заметить, эффективность обработки естественных запросов пока оставляет желать лучшего). 

Нейро-символическая модель может использоваться для обучения роботов, чтобы они смогли связывать между собой какое-либо действие (например, толчок) и его семантическое представление. Это позволит машинам проще и быстрее адаптироваться к сложным интерактивным средам.

С оригинальной статьёй можно ознакомиться на портале openreview.net.

Три слова, которые поймут только айтишники

Три слова, которые поймут только айтишники

Если вы не разработчик, но работаете в IT-компании, или в вашем окружении есть программисты, то, скорее всего, часто слышите странные...
Read More
Customer development: почему при выборе идеи нужно учитывать мнение клиентов

Customer development: почему при выборе идеи нужно учитывать мнение клиентов

Вместе с менеджером по продуктам REG.RU Никитой Атучиным разбираем, почему MVP — не всегда хорошее решение для старта бизнеса. Если вы...
Read More
Как выбрать и создать первый ИИ-проект

Как выбрать и создать первый ИИ-проект

Искусственный интеллект постепенно меняет самые разные отрасли промышленности, как это происходило с электричеством 100 лет назад. Он помогает руководителям фирм...
Read More
Улучшаем изображение с плохим освещением с помощью нейросети

Улучшаем изображение с плохим освещением с помощью нейросети

Что такое фотография с точки зрения физики? Это отпечаток, возникающий на светочувствительной матрице при отражении от объекта источника света: солнца,...
Read More
Как ускорить Data Science с помощью GPU

Как ускорить Data Science с помощью GPU

Аналитикам данных нужны вычислительные мощности. Обрабатываете ли вы большой датасет в Pandas или перемножаете множество матриц с Numpy — вам...
Read More
Стэнфордский курс: лекция 5. Свёрточные нейронные сети

Стэнфордский курс: лекция 5. Свёрточные нейронные сети

На прошлой лекции мы узнали, как метод обратного распространения ошибки помогает находить градиент для сложных функций, а также провели параллели...
Read More
Джон Макафи: создатель антивируса McAfee и один из самых неоднозначных IT-предпринимателей XX века

Джон Макафи: создатель антивируса McAfee и один из самых неоднозначных IT-предпринимателей XX века

В 1987 году Джон Макафи запустил программу, названную в честь себя, — McAfee Virus Scan. ПО быстро стало лидирующим решением для...
Read More
Интерпретация строения мозга с помощью рекуррентных нейронных сетей

Интерпретация строения мозга с помощью рекуррентных нейронных сетей

Коннектомика — область науки, изучающая работу мозга с помощью анализа и построения карты нейронных связей. Она помогает лучше понять сложную...
Read More
Учим нейросети рассуждать о том, что они видят

Учим нейросети рассуждать о том, что они видят

Ребёнок, который никогда не видел розового слона, всё равно может его описать, в отличие от компьютера. Способность обобщать информацию и...
Read More
Всем игрокам приготовиться: обзор доменов в играх

Всем игрокам приготовиться: обзор доменов в играх

Компьютерные игры становятся всё более похожими на реальную жизнь. За последние годы в них значительно улучшилась графика, искусственный интеллект неигровых...
Read More