Генеративные состязательные сети: творческая сторона машинного обучения

Быстрое развитие искусственного интеллекта (ИИ) делает машины умнее. Поскольку они имеют возможность использовать входные данные для автономного обучения, машины создают новые способы поддержки человека при выполнении все более сложных задач.

Одно из решений, которое является очень перспективным и уже дает впечатляющие результаты во многих областях, известно как генеративные состязательные сети (GANs). GANs в основном используются для генерации изображений, но они также позволяют автоматически создавать текст. Но что такое GAN? Как они работают? И какие подходящие приложения они предлагают?

Что такое GAN?

Прежде чем мы рассмотрим, что на самом деле могут сделать для нас GAN, давайте разберемся, что такое генеративные состязательные сети.

GAN — это система машинного обучения, разработанная в 2014 году Яном Гудфеллоу и его командой. Задача GAN — генерировать свои собственные творения на основе ряда реальных данных. Это позволяет сделать конечный результат обманчиво реальным, и становится трудно определить, что сгенерированные компьютером изображения были созданы не человеческими руками. Для этого используются две нейронные сети, которые взаимодействуют друг с другом.

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

Исходные данные и сгенерированная информация поступают в партнерскую сеть. Задача сети-дискриминатора — проверить все полученные данные, чтобы определить, являются ли они настоящими или поддельными. Изображение считается поддельным не только в том случае, если оно слишком сильно отклоняется от базовых данных, но и если оно слишком идеально. Если генератор просто берет среднее значение всех данных и выдает новое изображение, то определить машинную генерацию будет легко. Таким образом, дискриминатор также отфильтровывает результаты, которые не выглядят естественными.

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

Как работают GAN?

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

  1. Определение проблемы: На первом этапе необходимо определить проблему, которую система должна попытаться решить. Здесь разработчики собирают реальные данные, которые может использовать система.
  2. Архитектура: Различные проблемы требуют и различных генеративных состязательных сетей. По этой причине GAN должна быть оснащена правильной архитектурой для данного приложения.
  3. Обучение первого дискриминатора: На этом этапе начинается собственно обучение. Генератор останавливается, а дискриминатор только анализирует реальные данные и учится их понимать.
  4. Первое обучение генератора: Теперь дискриминатор останавливается, а генератор начинает генерировать фальсифицированные данные.
  5. Обучение второго дискриминатора: Теперь сеть дискриминатора получает новые, фальсифицированные данные от генератора и должна решить, какие наборы данных являются истинными, а какие — ложными.
  6. Второе обучение генератора: Сеть генератора совершенствуется в результате второго этапа обучения дискриминатора. Сеть генератора узнает слабые стороны дискриминатора и пытается использовать их для создания еще более реалистичных, фальшивых наборов данных.

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

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

Какие проблемы необходимо преодолеть системе?

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

Сбалансированное соревнование

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

Правильное понимание объектов

Генеративные адверсарные сети часто испытывают проблемы с правильным распознаванием и пониманием объектов. Это особенно актуально для изображений. Вот пример: На реальном изображении показаны две кошки, у каждой из которых по два глаза. Если генератор не понимает полной структуры и расположения изображения, он может сгенерировать вместо него изображение одной кошки с четырьмя глазами. GAN-генераторы также могут запутаться в перспективах и не понять, что на двух изображениях один и тот же мотив изображен под разными углами.

Где используются ГАС?

Генеративные адверсарные сети привлекли к себе особое внимание — даже за пределами компьютерной науки — после того, как художник Obvious использовал эту технологию для создания произведения искусства. Картина была продана на аукционе за $432 500. Но GAN может давать поразительные результаты и вне художественных приложений.

Прогнозирование видео

Основываясь на отдельных видеокадрах, GAN могут предсказывать продолжение видео и таким образом автономно продлевать видео в конце отснятого материала. Они учитывают все элементы видео, включая движения и действия, а также изменения фона, такие как дождь или туман.

Генерация изображений на основе текста

GAN могут генерировать изображения на основе описания. Например, они могут использовать сценарий для самостоятельной генерации раскадровки.

Генерация сложных объектов

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

Улучшение деталей изображения

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

Разработка новых продуктов

Некоторые компании уже экспериментируют с GANs в разработке продуктов и создают с помощью этой системы совершенно новые дизайны и линейки продуктов.

Создание текста продукта

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

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

Оцените статью
cdelat.ru
Добавить комментарий