Project Creaite и будущее дизайна продукта

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

Как мы все знаем, искусственный интеллект наконец-то здесь в своей узкой форме и готов помочь в решении конкретных проблем, для которых у нас есть легкодоступные данные. Все мы видели алгоритмы машинного обучения, выполняющие самые разные задачи: от распознавания речи до визуального поиска и управления автономными автомобилями. Мы даже видели алгоритмы, играющие в такие игры, как Chess, Atari, древнюю китайскую игру Go и т. Д., И они даже побеждали чемпионов мира в этих играх. Большинство этих достижений регулируется так называемым классом дискриминатора алгоритмов машинного обучения. Недавно появились многообещающие алгоритмы другого типа, называемые генеративными моделями. В Artifacia Research мы потратили некоторое время на подробное изучение генеративных моделей. На первом этапе проекта Creaite мы использовали схему кодировщика-декодера, чтобы получить многообещающие результаты, и несколько месяцев назад построили прототип, который может создавать новые дизайны для модных продуктов после того, как мы получим достаточное количество примеров. Мы думаем, что аналогичный подход можно применить к другим изображениям и моделям из других областей творчества, а в сочетании с такими методами, как 3D-моделирование, он может быть использован для улучшения дизайна продукта в разных областях.

В Deep Learning большинство проблем, о которых вы слышите, контролируются по своей природе. Сообщество исследователей искусственного интеллекта, вдохновленное мощью алгоритмов глубокого обучения, также недавно начало уделять больше внимания неконтролируемому обучению и проблемам обучения с подкреплением, чтобы иметь возможность улучшать состояние существующих систем искусственного интеллекта. Когда дело доходит до обучения без учителя, основная проблема, с которой мы сталкиваемся, — это методы представления данных в виде функций. Для этого были введены автокодировщики. Как следует из названия, он кодирует неконтролируемые данные, так что кодирование может быть использовано для решения многих проблем, которые мы хотим решить.

См. также:  Прошел уже месяц?

Обучение автокодировщика — очень интересный процесс. По сути, это нейронная сеть, выходные данные которой совпадают с входными. Базовая архитектура автокодировщика следующая. Существует входной слой, за которым следуют несколько скрытых слоев, а затем, после определенной глубины, скрытые слои следуют обратной архитектуре, пока мы не достигнем точки, где последний слой совпадает с входным слоем. Мы передаем данные в сеть, встраивание которой мы хотим изучить.

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

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

Изображения, полученные с помощью нашей сети кодировщика-декодера, не совсем красивы, но все же выглядят сюрреалистично. Чтобы создавать красивые естественные изображения, которые создают наши камеры, существует область исследований, называемая Генеративными моделями. Генеративные модели бывают разных вкусов. Есть генеративные модели, которые используют состязательные сети, есть сети, которые используют вариационные автокодировщики и т. Д. Генеративные модели с состязательной сетью пытаются изучить распределение входных данных, а затем пытаются запутать дискриминационные модели. Дискриминантная модель пытается спастись, постоянно учясь на собственных ошибках, и это в конечном итоге приводит к тому, что генеративная модель изучает половину распределения данных, и с этим знанием она может генерировать множество новых изображений, которые напоминают естественные изображения.

См. также:  Эта ветка комментариев выглядит наполненной любовью к Laravel.

Мы в Artifacia Research считаем, что дальнейшее развитие этой технологии может помочь повысить эффективность дизайна одежды в частности и дизайна продукции в целом. Мы действительно воодушевлены возможностями глубокого обучения и искусственного интеллекта, поэтому мы будем инвестировать свое время, чтобы очень скоро вывести этот проект на новый уровень. Дайте нам знать, что вы думаете об этом крутом новом проекте, выходящем из наших лабораторий!

Ссылки

G.E. Хинтон, С. Осиндеро и Ю.В. Тех. Алгоритм быстрого обучения для сетей глубоких убеждений. Бумажная ссылка

Дидерик П. Кингма, Макс Веллинг Вариационный байесовский кодекс с автокодированием. Бумажная ссылка

Примечание. Работа над этим постом еще не завершена, и вскоре мы собираемся добавить к нему больше иллюстративных примеров изображений и связанных с ними исследовательских материалов.

P. S. Изначально эта публикация появилась в нашем блоге Artifacia Research Blo g.

Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: