Прогрессивные генеративно-состязательные нейросети (PGGAN) от Nvidia: быстрое обучение и высокое качество изображений

NeuroHive Ru
May 29, 2018 · 4 min read

Генеративно-состязательные нейросети (Generative Adversarial Networks — GANs) — одна из наиболее перспективных разработок в области глубокого обучения. GANs — это генеративные сети, которые не так давно приобрели популярность в сфере машинного обучения. Комбинируя характерные особенности входных данных, они создают принципиально новые объекты, неотличимые от реальных. За последние несколько лет генеративные нейросети привлекли внимание и нашли практическое применение.

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

GANы способны работать с многомерными данными. К примеру, они могут создавать реалистичные изображения, используя характерные особенности тренировочных датасетов. Столь мощное семейство нейронных сетей в машинном обучении возникло благодаря комбинации глубоких нейросетей и теории игр (GANs, Ian Goodfellow, 2014).

Рассмотрим структуру GANs. Они состоят из двух взаимодействующих нейросетей:

  • Генератор — генерирует образцы, используя набор переменных скрытого пространства.
  • Дискриминатор — оценивает отличие сгенерированных образцов от образцов тренировочного набора.

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

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

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

Новый подход к генерации изображений от Nvidia

Исследователи NVIDIA и Университета Аалто разработали инновационный подход к решению этих проблем, описанный в работе “Progressive Growing of GANs”. Идея проста: во время обучения обе нейросети (Генератор и Дискриминатор) развиваются посредством добавления новых слоёв. Помимо этого, исследователи ввели и другие улучшения в процесс обучения для генерации более реалистичных изображений в высоком разрешении.

Рис.2. Предлагаемый метод последовательного развития GANs.

Развитие в процессе обучения

Идея заключается в том, чтобы позволить нейросети изучить сначала крупные структуры на изображении, а затем более мелкие. Это делает процесс обучения более стабильным, а также улучшает качество конечных изображений за счёт природы генеративных сетей, которые осуществляют сложное проецирование пространства скрытых переменных на реалистичное изображение. Поэтапное выполнение этого процесса легче, чем выполнение за один подход. В предлагаемой работе авторы используют зеркальные нейросети Генератора и Дискриминатора, начиная с очень малого разрешения (4х4 пикселя) и последовательно развивая нейросеть для работы с высоким разрешением (1024х1024).

Нормировка в Генераторе и Дискриминаторе

Для дальнейшего улучшения параметров генерируемого изображения авторы применяют нормировку данных в Генераторе и Дискриминаторе. Они выяснили, что деструктивная конкуренция между двумя нейросетями (Генератором и Дискриминатором) приводит к проблемам в обучении, и поэтому они предлагают ограничивать конкуренцию и амплитуду весов для более стабильного и быстрого обучения. Для достижения этой цели были использованы два метода: особая инициализация весов и попиксельная нормировка вектора особенностей изображения. Таким образом, в процессе обучения развивается не только нейросеть, но также и набор весов. Интересно, что такой подход улучшает результат, добавляя динамики в систему.

Инициализация весов заключается в следующем: веса инициализируются с помощью нормального распределения с нулевой средней и единичной дисперсией, и далее во время работы происходит их масштабирование. Это и есть ограничение амплитуды, о котором говорилось ранее. Такой подход улучшает процесс обучения в случае, если оптимизатор инвариантен относительно изменения масштаба весов (как RMSProp, ADAM и т.д.).

Идея попиксельной нормализации вектора особенностей заключается в приведении длины характеристического вектора к единице. Нормировка производится в Генераторе после каждого свёрточного слоя.

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

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

Рис.3. Постепенное улучшение результатов при внесении различных улучшений. MS-SSIM — Multi-Scale Structural Similarity score — Мультимасштабная оценка структурного сходства. Тестирование проводилось с использованием датасетов CELEBA и LSUN.
Рис.4. Сравнение качества генерируемых изображений на примере датасета LSUN.

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

https://neurohive.io/ru/papers/pggan-progressivnaja-generativnaja-nejroset-ot-nvidia/

Оригинал — Dane Mitriev

NeuroHive Ru

Written by

Блог переехал на Хабр -https://habr.com/users/neurohive/posts/

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade