Инцепционизм, или о чем грезят андроиды

Jun 19, 2015 23:57

Оригинал взят у haritonoff в Инцепционизм, или о чем грезят андроиды


В блоге Google опубликован рассказ группы исследователей о том, как искусственные нейронные сети научили писать свои картины. Для этого использовались нейросети, предназначенные для распознавания изображений: получив фотографию или рисунок, они выясняют, какие именно объекты на ней изображены.

Такие нейросети состоят из 10-30 связанных слоев, которые работают последовательно: получив картинку, они анализируют ее и «сообщают» результаты анализа следующему слою. Например, первые слои могут искать на изображении края и углы, средние - интерпретировать наборы особенностей в отдельные объекты (например, двери или листья). Наконец, финальные слои объединяют все эти интерпретации воедино и делают выводы о том, что изображено на картинке - например, здание или дерево.



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

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







Например, базовые слои, определяющие края и их положение на картинке, будут накладывать на фотографию мазки или простые орнаменты:



А ниже - пример того, что получится, если скормить картинку более «продвинутым» слоям нейронной сети, которые ищут целые объекты на картинках. Разработчики как бы говорят нейросети: «Найди тут что-нибудь знакомое и выдели это поярче». В результате, если сети покажется, что облако похоже на птицу, она сделает его еще более похожим.



Эта нейросеть в основном обучалась на изображениях животных, поэтому она попыталась найти их на фотографии.



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





















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

































Источник; по наводке vadim_proskurin
Previous post Next post
Up