Так называемое неконтролируемое обучение просто неконтролируемое с ограничениями и предшествующей логикой, добавленной людьми — Дэвид 9
Обновление: некоторые студенты обнаружили, что этой статьи может не быть в окончательном списке допущенных к CVPR2018 (только подача), и, наконец,Пожалуйста, перейдите по ссылке ниже, чтобы ознакомиться со списком поступающих:
В последнее время область генерации изображений«Без присмотра»Ветер, Дэвид 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:
И у этих неконтролируемых методов есть недостаток: они не могут генерироватьРазнообразные (полиморфные) картинки.MUNITПредлагается решить эту проблему, т.к. в настоящее время аналогичныBicycleGANМетод генерации полиморфного изображения требуетпарный надзоручиться.
MUNITДля этого делаются некоторые ограничения и допущения, например, предполагается, что картинка имеет две части информации:содержание систили, кроме того, при преобразовании стиля изображения домен1 и домен2Информационное пространство общего контента c:
При генерации картинки ставить такой жесодержание сотличается отстилиОбъединение и кодирование вывода дает полиморфное изображение:
В реальной тренировке нам нужнодва автоэнкодера, соответствующие домену1 и домену2 соответственно:
Оба автокодировщика должны быть сначала обучены в своих соответствующих доменах.В процессе необходимо убедиться, что одно и то же изображение x1 может быть восстановлено в аналогичные изображения в домене., так называемый пустьПотери внутренней реконструкции домена x1 сведены к минимуму:
где E1 - кодировщик x1 (закодированный отдельно вИнформация о содержанииcиинформация о стиле), G1 — декодер (согласно c и s), декодированный в изображение в domain1.
При создании изображения преобразования стиля поместите информацию о содержимом в другой домен.c2Получить информацию о стиле с текущим доменомs1После объединения и декодирования для создания нового изображения вы можете создать изображение в стиле домена 1 x2-> 1 из домена 2. На следующем рисунке показан метод преобразования между доменами:
В это время для преобразованного изображения x2->1 необходимо построить т.н.латентная потеря реконструкции, то есть после кодирования картинки x2->1 энкодером информация о содержимом все еще может быть полученаc2с информацией о стилеs1(очевидно, интуиция в этот момент):
То есть кодировщик для содержимого c и стиля sТакже относится к сгенерированным изображениям.
Последний, кто смотритlossдапротив потерь,То есть изображения, сгенерированные вышеуказанным перекрестным доменом, должны быть неотличимы от изображений, сгенерированных самим внутренним доменом:
Таким образом, учитывая указанные выше три потери, нам нужнополная потеряследующее:
эти потериисходный код тензорного потока в MUNITСуществует также соответствующий (расположение кода:GitHub.com/смотрите i0112/MU…):
- Generator_A_loss = self.gan_w * G_ad_loss_a + \
- self.recon_x_w * recon_A + \
- self.recon_s_w * recon_style_A + \
- self.recon_c_w * recon_content_A + \
- self.recon_x_cyc_w * cyc_recon_A
- Generator_B_loss = self.gan_w * G_ad_loss_b + \
- self.recon_x_w * recon_B + \
- self.recon_s_w * recon_style_B + \
- self.recon_c_w * recon_content_B + \
- self.recon_x_cyc_w * cyc_recon_B
где self.recon_x_w и т. д., оканчивающиеся на _w, являются их соответствующими весами.
Фактическая архитектура реализации автоэнкодера MUNIT выглядит следующим образом:
один из нихкодировщик контентаикодировщик стилейНе о чем говорить. Интересно иметь хорошую интеграцию в декодерc энкодерикодировщик (идеальное сочетание контента и стиля), используя адаптивную нормализацию экземпляра (Adaptive Instance Normalization (AdaIN) техника, используясеть МЛППараметры генерации, вспомогательные Жилые Blocks генерирует качественные изображения:
где z представляет функцию информации о содержимом, выдаваемую предыдущим уровнем, u и σ — некоторые расчеты среднего значения канала и дисперсии для z, а γ и β — параметры, сгенерированные MLP из информации о стиле s для настройки генерации изображения (Сделайте содержимое изображения более подходящим для стиля изображения).
Соответствующий код находится вGitHub.com/смотрите i0112/MU… :
- def adaptive_instance_norm(content, gamma, beta, epsilon=1e-5):
- # gamma, beta = style_mean, style_std from MLP
- c_mean, c_var = tf.nn.moments(content, axes=[1, 2], keep_dims=True)
- c_std = tf.sqrt(c_var + epsilon)
- return gamma * ((content - c_mean) / c_std) + beta
Посмотрите, как MUNIT сравнивается с другими моделями (для ясности и разнообразия):
Вышеприведенная таблица представляет собой задачу создания изображения реальной обуви и сумок из эскизов.неконтролируемыйиполиморфизмМежду ними найден хороший баланс.
Наконец, взгляните на пример генерации изображения MUNIT:
использованная литература:
- Multimodal Unsupervised Image-to-Image Translation
- GitHub.com/смотрите i0112/MU…
- GitHub.com/NV labs/муни…
Этот документ принимаетАтрибуция — Некоммерческое использование — Без производных инструментов 3.0 Лицензионное соглашение для материкового КитаяЛицензия. Авторские права принадлежат оригиналу "Блог Дэвида 9", если вам нужно перепечатать, пожалуйста, свяжитесь с WeChat: david9ml или по электронной почте: yanchao727@gmail.com
Или отсканируйте QR-код напрямую:
Будь первым, кто лайкнетThe following two tabs change content below.