В конце 2018 года Instagram анонсировала новые возможности для незрячих пользователей: в соцсети появился автоматический альтернативный текст. Эта функция создает описания к фото на основе распознавания объектов. При использовании программ для озвучивания текста, слабовидящие люди смогли услышать описания изображений.
Оценивать популярность и целесообразность новой функции оставим аналитикам компании, в этой статье я поделюсь собственным опытом создания такого же функционала — создания подписей к изображениям.
Для задачи конвертации изображения в текстовое описание широко применяется подход кодировщика-декодировщика. В качестве кодировщика используется сверточная сеть.
В качестве такой сети используем предобученную на ImageNet ResNet. Декодером является сеть LSTM.
Обучение производилось на датасете MSCOCO 2017
В результате обучения получили нужную сеть. Примеры генерируемых подписей на новых, не виденных на обучении изображениях приведены ниже