Нейросеть создала фотографию блюда по его рецепту

Ori Bar El et al. / arXiv.org, 2019

Израильские разработчики создали нейросеть, способную формировать изображение на основе длинного текстового описания объекта, которое не содержит четких данных о его визуальных признаках. В качестве примера они научили ее создавать фотографии блюда по его рецепту. Посвященная разработке статья доступна на arXiv.org.

Исследователи применяют нейросетевые алгоритмы для разных задач, связанных с изображением. Как правило, это задачи по классификации изображений или их обработке, но также есть достаточно большой класс задач, связанный с созданием изображения с нуля, в том числе на основе текстового описания. Во время обучения такого алгоритма он учится связывать слова с соответствующими визуальными признаками. Обычно при обучении нейросеть получает четкое описание визуальных признаков, к примеру, «оранжевый апельсин на белой тарелке». Однако в реальности многие тексты описывают объекты не настолько четко. К примеру, в кулинарных рецептах нет описания итогового блюда, а есть лишь список исходных ингредиентов и этапы готовки.

Нетанел Йозефиан (Netanel Yosephian) и его коллеги из Тель-Авивского университета разработали нейросеть, способную создавать изображение объекта, даже если его описание не содержит четких данных о его визуальных признаках. Авторы отмечают, что выбранный ими подход основан на работе других исследователей, создавших датасет из 800 тысяч пар рецептов и фотографий блюд, а также научивших нейросеть составлять рецепт по фотографии.

Созданный израильскими разработчиками алгоритм работает с полноценными рецептами, содержащими список ингредиентов и описание этапов приготовления, занимающими десятки строк. Изначально алгоритм принимает отдельно рецепт и ингредиенты, и переводит их в отдельные вектора. После этого вектора подвергаются процедуре совместного вложения, при которой они формируют единый вектор, который условная генеративно-состязательная нейросеть StackGAN-v2 превращает в изображение блюда.

Разработчики обучили нейросеть на 52 тысячах пар рецептов и фотографий из датасета Recipe1M и проверили работу алгоритма еще на 24 тысячах пар. Для проверки его работы авторы выбрали две метрики — количественную и качественную. В первом случае они использовали описанную в 2016 году методику, позволяющую оценить работу генеративно-состязательной сети. Во время проверки созданные нейросетью изображения отдаются алгоритму для распознавания изображений и он относит объект на изображении к знакомым ему классам с присвоенной им долей вероятности. Чем меньше энтропия распределения вероятности по классам — тем более качественной признается работа нейросети. При такой проверке нейросеть набрала 4,55 ± 0,20 балла по пятибалльной шкале. Кроме того, работу нейросети попросили оценить людей. При проверке на то, насколько результат работы нейросети похож на реальные фотографии еды, нейросеть получила 3,72 балла.

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

Григорий Копиев

Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.