CVPR2018 Featured # 1: Неконтролируемые и полиморфные методы передачи стиля изображения

машинное обучение искусственный интеллект глубокое обучение

Так называемое неконтролируемое обучение просто неконтролируемое с ограничениями и предшествующей логикой, добавленной людьми — Дэвид 9

Обновление: некоторые студенты обнаружили, что этой статьи может не быть в окончательном списке допущенных к CVPR2018 (только подача), и, наконец,Пожалуйста, перейдите по ссылке ниже, чтобы ознакомиться со списком поступающих:

GitHub.com/arms/daily…

В последнее время область генерации изображений«Без присмотра»Ветер, Дэвид 9 сегодня рассказывает о новой работе Корнельского университета и NVIDIA, которая позволяет генерировать неконтролируемые"Полиморфизм"Технология изображения, название статьи:Multimodal Unsupervised Image-to-Image Translation(MUNIT).

Этот ветер «неконтролируемого» дует только потому, что мы обнаруживаем, что использованиеGANобъединить несколькоИскусственные ограничения и трансцендентальная логика, при обученииНет необходимости контролировать сопряжение изображений, прямо вdomain1иdomain2Случайным образом выбрав несколько изображений для обучения, вы можете получить модель переноса стиля. Существует много практик с этими ограничениями и априорными значениями, которые могут заставить модель переноса стиля (от домена1 к домену2) сохранить некоторые из доменов1.Семантические особенности; также может быть какCycleGANОграничение непротиворечивости цикла , еслиизображение хПреобразование из домена1 в домен2 становится y, затем преобразование y из домена2 обратно в домен1 становитсяx2, x должен быть очень похож и соответствовать x2:

Из CycleGAN: https://arxiv.org/pdf/1703.10593.pdf

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

MUNITДля этого делаются некоторые ограничения и допущения, например, предполагается, что картинка имеет две части информации:содержание систили, кроме того, при преобразовании стиля изображения домен1 и домен2Информационное пространство общего контента c:

Автоэнкодер для MUNIT

При генерации картинки ставить такой жесодержание сотличается отстилиОбъединение и кодирование вывода дает полиморфное изображение:

Из: https://arxiv.org/pdf/1804.04732.pdf

В реальной тренировке нам нужнодва автоэнкодера, соответствующие домену1 и домену2 соответственно:

Из: https://arxiv.org/pdf/1804.04732.pdf

Оба автокодировщика должны быть сначала обучены в своих соответствующих доменах.В процессе необходимо убедиться, что одно и то же изображение x1 может быть восстановлено в аналогичные изображения в домене.\hat{x1}, так называемый пустьПотери внутренней реконструкции домена x1 сведены к минимуму:

где E1 - кодировщик x1 (закодированный отдельно вИнформация о содержанииcиинформация о стиле), G1 — декодер (согласно c и s), декодированный в изображение в domain1.

При создании изображения преобразования стиля поместите информацию о содержимом в другой домен.c2Получить информацию о стиле с текущим доменомs1После объединения и декодирования для создания нового изображения вы можете создать изображение в стиле домена 1 x2-> 1 из домена 2. На следующем рисунке показан метод преобразования между доменами:

Из: https://arxiv.org/pdf/1804.04732.pdf

В это время для преобразованного изображения x2->1 необходимо построить т.н.латентная потеря реконструкции, то есть после кодирования картинки x2->1 энкодером информация о содержимом все еще может быть полученаc2с информацией о стилеs1(очевидно, интуиция в этот момент):

То есть кодировщик для содержимого c и стиля sТакже относится к сгенерированным изображениям.

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

Таким образом, учитывая указанные выше три потери, нам нужнополная потеряследующее:

эти потериисходный код тензорного потока в MUNITСуществует также соответствующий (расположение кода:GitHub.com/смотрите i0112/MU…):

  1. Generator_A_loss = self.gan_w * G_ad_loss_a + \
  2. self.recon_x_w * recon_A + \
  3. self.recon_s_w * recon_style_A + \
  4. self.recon_c_w * recon_content_A + \
  5. self.recon_x_cyc_w * cyc_recon_A
  6. Generator_B_loss = self.gan_w * G_ad_loss_b + \
  7. self.recon_x_w * recon_B + \
  8. self.recon_s_w * recon_style_B + \
  9. self.recon_c_w * recon_content_B + \
  10. self.recon_x_cyc_w * cyc_recon_B

где self.recon_x_w и т. д., оканчивающиеся на _w, являются их соответствующими весами.

Фактическая архитектура реализации автоэнкодера MUNIT выглядит следующим образом:

Из: https://arxiv.org/pdf/1804.04732.pdf

один из нихкодировщик контентаикодировщик стилейНе о чем говорить. Интересно иметь хорошую интеграцию в декодерc энкодерикодировщик (идеальное сочетание контента и стиля), используя адаптивную нормализацию экземпляра (Adaptive Instance Normalization (AdaIN) техника, используясеть МЛППараметры генерации, вспомогательные Жилые Blocks генерирует качественные изображения:

Из: https://arxiv.org/pdf/1804.04732.pdf

где z представляет функцию информации о содержимом, выдаваемую предыдущим уровнем, u и σ — некоторые расчеты среднего значения канала и дисперсии для z, а γ и β — параметры, сгенерированные MLP из информации о стиле s для настройки генерации изображения (Сделайте содержимое изображения более подходящим для стиля изображения).

Соответствующий код находится вGitHub.com/смотрите i0112/MU… :

  1. def adaptive_instance_norm(content, gamma, beta, epsilon=1e-5):
  2. # gamma, beta = style_mean, style_std from MLP
  3. c_mean, c_var = tf.nn.moments(content, axes=[1, 2], keep_dims=True)
  4. c_std = tf.sqrt(c_var + epsilon)
  5. return gamma * ((content - c_mean) / c_std) + beta

Посмотрите, как MUNIT сравнивается с другими моделями (для ясности и разнообразия):

Из: https://arxiv.org/pdf/1804.04732.pdf

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

Наконец, взгляните на пример генерации изображения MUNIT:

Из: https://arxiv.org/pdf/1804.04732.pdf
Из: https://arxiv.org/pdf/1804.04732.pdf

 

использованная литература:

  1. Multimodal Unsupervised Image-to-Image Translation
  2. GitHub.com/смотрите i0112/MU…
  3. GitHub.com/NV labs/муни…

Этот документ принимаетАтрибуция — Некоммерческое использование — Без производных инструментов 3.0 Лицензионное соглашение для материкового КитаяЛицензия. Авторские права принадлежат оригиналу "Блог Дэвида 9", если вам нужно перепечатать, пожалуйста, свяжитесь с WeChat: david9ml или по электронной почте: yanchao727@gmail.com

Или отсканируйте QR-код напрямую:

Будь первым, кто лайкнетThe following two tabs change content below.

    David 9

    Электронная почта: yanchao727@gmail.com WeChat: david9ml