fbpx
  • StyleGAN для генерации новых лиц опубликована в открытом доступе

    stylegan

    NVIDIA опубликовала код предобученной модели StyleGAN для генерации лиц, которые никогда не существовали. StyleGAN является state-of-the-art моделью с лучшими свойствами интерполяции и распутывания, способностью находить скрытые факторы вариации (определять положение лица и идентичность).

    Мы писали об анонсе StyleGAN 18 декабря прошлого года, но тогда NVIDIA не показала готовую реализацию этой сети. Теперь код находится в открытом доступе и лежит в репозитории на GitHub и мы можем более подробно проанализировать метод и его результаты.

    Идея

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

    Недавно была опубликована работа, в которой авторы попытались вскрыть генеративно-состязательные сети и выяснить их внутренние представления.

    В новом методе, предложенном NVIDIA, архитектура генератора переделывается так, что открываются новые способы контролировать процесс генерации изображения. Фактически генератор StyleGAN начинает с изученного постоянного входа, а дальше регулирует “стиль” изображения на каждом сверточном слое. Таким образом генератор способен напрямую контролировать значимость признака изображения в различных масштабах. Цель этой архитектуры — определить скрытые факторы вариации и тем самым увеличить уровень контроля.

    Архитектура StyleGAN

    Говоря простым языком, архитектура StyleGAN пытается отделить высокоуровневые атрибуты изображения (положения лица, личность человека) от случайных вариационных факторов, таких как прическа, веснушки и тому подобное. Отмечу, что когда я говорил об архитектура генератора, я имел ввиду сеть генератора (как одну из частей GAN). Это различие очень важно понимать, так как исследователи из NVIDIA модифицировали только процесс синтеза изображения (генератор), а не дискриминатор.

    stylegan architecture
    Предложенная архитектура генератора

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

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

    Нормализация входов на сверточных слоях

    Каждый вход сверточного слоя нормализуется с помощью операции AdaIN (adaptive instance normalization) с использованием вложений “стиля” скрытого вектора. Наконец, в сеть встраивается дополнительный шум для генерации случайных элементов на изображениях. Этот шум — просто одноканальное изображение, состоящее из некоррелированного гауссова шума. Шум подается перед каждой операцией AdaIN на каждый сверточный слой. Более того, существует фактор масштаба для шума, который  обучается для каждого признака.

    Эффект от шума на разных слоях. (a) Шум применен ко всем слоям. (b) Шума нет. (c) Шум только в тонких слоях. (d) Шум только крупных слоях.
    Эффект от шума на разных слоях. (a) Шум применен ко всем слоям. (b) Шума нет. (c) Шум только в тонких слоях. (d) Шум только крупных слоях.

    Результаты

    Так как основная задача метода — возможность распутывания (disentanglement) и интерполяции генеративной модели, возникает вопрос: “Что происходит с качеством и разрешением изображения?”.

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

    Набор избражений, сгенерированных StyleGAN сетью на датасете FFHQ
    Набор избражений, сгенерированных StyleGAN сетью на датасете FFHQ

    Помимо архитектуры исследователи показали два новых автоматических метода для количественной оценки качества интерполяции и распутывания, а также представили новый датасет с человеческими лицами. Эксперименты проводились сразу на CelebA-HQ и новом датасете FFHQ. Было показано, что StyleGAN превосходит традиционные генеративно-состязательные сети и достигает state-of-the-art результата в традиционных метриках. В таблице представлено сравнение StyleGAN с традиционной GAN в качестве бэйзлайна.

    FID для различных конструкций генератора (чем меньше, тем лучше). FID считается по 50000 изображениям, выбранным случайно из тренировочного сета.
    FID для различных конструкций генератора (чем меньше, тем лучше). FID считается по 50000 изображениям, выбранным случайно из тренировочного сета.
    Результаты теста длины Perceptual path и разделимости (чем меньше, тем лучше). Результаты получены на традиционной Z и новой StyleGAN W сетях.
    Результаты теста длины Perceptual path и разделимости (чем меньше, тем лучше). Результаты получены на традиционной Z и новой StyleGAN W сетях.
    ffhq
    Объекты в датасете FFHQ
    Эксперименты по генерации других несуществующих объектов показали неплохие рельзультаты:

    stylegan nvidia new objects
    Новые объекты, сгенерированные StyleGAN

    Код StyleGAN

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