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

Введение

Понимание Видеть, что GAN не может генерировать (ICCV2019) «бумага, github»

Это документ, посвященный пониманию и количественной оценке пропущенного класса объектов при создании GAN. Недавние исследования GAN, такие как ProgressiveGAN, StyleGAN (NVIDIA) приводит к синтезу реалистичных изображений. Несмотря на множество исследований, проблемы с GAN все еще остаются. Сбой режима или сброс режима, GAN пропускает часть целевого распределения.

Изображения могут быть видны, как показано ниже.

Автор говорит «Откуда мы можем знать, что GAN не может сгенерировать?»

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

Что такое ГАН?

GAN (Generative Adversarial Network) — это модель нейронной сети, которая создает новое генеративное изображение с использованием сети генератора и дискриминатора.

DCGAN

Неконтролируемое репрезентативное обучение с помощью глубоких сверточных генеративно-состязательных сетей (ICLR2016)

DCGAN (Генеративные состязательные сети глубокой свертки) — это неконтролируемое обучение с использованием генеративных и дискриминаторных сетей. Обучение с учителем с использованием CNN - это задача классификации, которая имеет метки. Неконтролируемое обучение — это такая проблема регрессии, которая изучает представление о данных. GAN может изучать представления о входных наборах данных изображений и генерировать новые изображения с этим представлением.

Дискриминатор выглядит как сеть CNN. а Генератор выглядит как перевернутая сеть CNN. Поезд идет на минимизацию функции потерь между Генератором и Дискриминатором.

ВГАН

Wassertein GAN (CoRR, 2017)

WassersteinGAN(WGAN)с использованием расстояния Вассерштейна вместо оригинальной GAN. Функция потерь исходного GAN представляет собой KL-дивергенцию. Автор говорит, что нестабильная проблема при обучении GAN связана с функцией потерь. WGAN представила более стабильную модель GAN и проложила путь многим исследованиям GAN.

ПрогрессивГАН (PGGAN)

Прогрессивный рост сетей GAN для обеспечения качества, стабильности и разнообразия (ICLR2018)

ProgressiveGAN изучает изображения от низкого до высокого разрешения. Почему автор использовал прогрессивный метод? Это связано с тем, что изучение изображений с высоким разрешением непосредственно на первом слое является очень сложной задачей. Внедряется прогрессивный метод обучения, первый слой с низким разрешением 4x4 пикселя. По мере обучения постепенно добавлялись слои к G и D. Наконец, оно достигает 1024x1024 пикселей.

ProgressiveGAN показывает изображения высокого качества лучше, чем другие.

СтильGAN

Архитектура генератора на основе стилей для генеративно-состязательных сетей (CVPR2019)

StyleGANизучает стиль картографической сети и синтезирует изображения на основе ProgressiveGAN. Это также можно назвать передачей стиля.

ProgressiveGAN использует традиционный генератор, а StyleGAN использует генератор на основе стилей. Генератор на основе стилей улучшает сеть генераторов, используя эти методы. Сопоставьте ввод со скрытым пространством. Генератор управления с адаптивной нормализацией экземпляра (AdalIN) и гауссовским шумом. A - изученное аффинное преобразование, B - изученные масштабные коэффициенты для каждого канала для входного шума.

Это смешанное создание источника A и источника B, и StyleGAN может хорошо изучить стиль.

Давайте посмотрим, что GAN не может сгенерировать.

Статистика сегментации сгенерированного изображения

В ProgressiveGAN и StyleGAN по-прежнему существует проблема пропуска объекта. Вот несколько изображений. Показано, что GAN может хорошо генерировать образ церкви, но человек опущен. И некоторые деревья и двери тоже опущены. В этом исследовании автор использовал сеть сегментации как исходных, так и сгенерированных изображений. Например, на исходном изображении сегмент может быть указан как "люди", а на сгенерированных изображениях указано "церковь". То есть сегментированный объектный класс может отличаться между реальными и сгенерированными изображениями.

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

Инверсионная сеть

Модель генератора может быть записана как функция. Обучите кодировать E, чтобы получить начальное предположение для скрытого z. Он используется для начального скрытого z0 и начального промежуточного представления r0. А r0 используется для инициализации поиска r*получить реконструкцию x’, близкую к цели x.

То есть оптимизируйте функцию, которая выводит функцию G (r) (восстановленное изображение) и цель x (исходное изображение).

Вкратце, компания учится минимизировать разрыв между реконструированными изображениями и реальными изображениями.

Вывод

  • Мы можем видеть, что не может сгенерировать GAN.
  • Используя статистику сегментации сгенерированного изображения, мы можем увидеть некоторые различия классов объектов сегмента между реальными и сгенерированными изображениями.
  • Используя Инверсионную сеть, мы находим сеть, которая минимизирует разрыв между реконструированными изображениями и реальными изображениями.
  • Следующая работа автора была посвящена GAN с использованием инверсионной сети. Они создали GANPaint Studio (обработка семантических фотографий с предварительным генеративным изображением, SIGGRAPH2019). Это такая система редактирования фотографий, использующая GAN и сеть сегментации и инверсии. Вот что они сделали.