- Народ активно работает над задачей генерации картинки по тексту
- Особенно активно работают китайские исследователи
- Но картинки пока получаются маленькие - 256x256 пикселей, хотя вроде бы красиые.
- И на узкие темы. Например - только о птичках.
- Чтобы сеть овладела вопросом, нужно примерно 10 тыс. картинок с описаниями.
- Для работы над приложением задачи нужно:
- Собрать и разметить датасет. Наверное, это самое основное и важное. Пример данных см. по ссылки ниже, в "датасеты". Размечальщиков картинок можно нанять, см. MTurk.
- Нанять кого-то кто знает как устроены GAN, также нужно чтобы были знания про LSTM, возможно про Attention-слои.
- Программируетя это всё на Питоне, у специаллиста должен быть опыт работы с библиотеками TensorFLow или PyTorch.
Как мне представляется, малый размер картинок - существенное ограничение практической применимости. Возможно, его можно побороть, воспользовавшись результататми решения другой задачи машинного обучения - Super Resolution. В ней интеллектуально увеличивают разрешение, додумывая окружение каждого пикселя исходной картинки. Про это нужно смотреть дополнительно.
Обзор 2018 года https://arxiv.org/pdf/1805.00676.pdf
Подробнее, по статьям:
- 2014, Generative Adversarial Networks
- Работа общего характера, изложен метод совместной тренировки генеративной сети и сети - "критика". На входе - датасет картинок, на выходе - генеративная модель, имеющая возможность генерировать картинки, напоминающие исходные.
- Статья Goodfellow https://arxiv.org/abs/1406.2661
- 2016, Generative Adversarial Text to Image Synthesis,
- GANы используются для генерации картинок ("пискелей") по текстовому описанию: одному предложению на английском языке. Для кодирования предложений используются либо char-level CNN, либо LSTM.
- Использовались эмбеддинги GoogLeNet.
- Для тренировки использовались картинки 64х64х3.
- Датасеты - CUB-200, Oxford-102, COCO.
- Статья Scott Reed, https://arxiv.org/abs/1605.05396
- 2017-04, A Neural Representation of Sketch Drawings
- Подход к генерации скетчей, использующий Рекуррентные сети (Bidirectional RNN)
- Написана сотрудниками Гугла.
- Генерирует схематичные картинки, напоминающие детские рисунки карандашом.
- Датасет QuickDraw
- Статья https://arxiv.org/abs/1704.03477
- 2017-09, StackGAN++: Realistic Image Synthesis with Stacked Generative Adversarial Networks
- Подход к генерации картинок по описанию, использующий деревья из GAN-сетей.
- Все авторы с китайскими фамилиями
- High-resolution (для данной задачи) images, 256х256
- Датасеты: CUB, Oxford-102, COCO, LSUN, ImageNet
- Статья https://arxiv.org/abs/1710.10916
- ГитХаб https://github.com/hanzhanggit/StackGAN-v2
- 2017-11, AttnGAN: Fine-Grained Text to Image Generation with Attentional Generative Adversarial Networks
- Генерация картинок GAN-сетью с attention-механизмом.
- Картинки разрешения 256х256
- Датасеты CUB, COCO
- Авторы с китайскими фамилиями, некоторые - теже что и StackGAN++
- Статья https://arxiv.org/abs/1711.10485
- ГитХаб https://github.com/taoxugit/AttnGAN
-
CUB-200, Caltech-UCSD Birds.
- 200 категорий (видов птиц), 11788 фотографий, аннотации места и частей тела, баундинг бокс.
- Нет данных по разрешению, вроде бы что-то в районе 800х600.
- Сайт http://www.vision.caltech.edu/visipedia/CUB-200-2011.html
-
Oxford-102 Flowers
- 102 вида цветков, 40-250 фотографий для каждого вида.
- Сайт http://www.robots.ox.ac.uk/~vgg/data/flowers/102/index.html
-
MS COCO dataset
-
QuickDraw
- "детские рисунки" нарисованные в ходе игры.
- Сайт https://quickdraw.withgoogle.com/data
-
LSUN
-
ImageNet
Нужно бы ещё посмотреть время генерации одной картинки. Может оказаться не вжух.