Миграция домена DA | Изучение синтетических данных: решение проблемы смены домена для Se | CVPR2018

искусственный интеллект
  • Статья перенесена из: публичного аккаунта WeChat «Алхимия машинного обучения»
  • Автор: Алхимический брат (авторизованный)
  • Контактное лицо: WeChat cyx645016617
  • Название статьи: «Изучение синтетических данных: решение проблемы сдвига домена для сегментации»

«Предисловие»: я давно не обновлял официальный аккаунт, и случайно впал в недоразумение: я думал, что прочитал достаточно статей, и использовал прежний перенос стиля и знания GAN для решения проблемы адаптации домена, еда Кулак Хаоса не убила старого мастера, но он был измотан. Затем найдите такую ​​хорошую структуру DA, приходите внимательно изучать главы и возвращайтесь снова с комбинацией глав в конце праздника.

image.png

0 Обзор

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

В этой статье предлагается адаптивный к предметной области алгоритм семантической сегментации.Особая проблема статьи: целевое поле не имеет метки.

Традиционные методы DA включают в себя минимизацию некоторой функции расстояния, которая измеряет распределение источника и цели. Два общих показателя:

  • Максимальное среднее расхождение (MMD)
  • Использование DCNN для изучения метрики расстояния посредством состязательного обучения

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

1 method

image.png

Судя по картинке, на самом деле проще понять:

  • Во-первых, я предполагаю, что он выполняет перенос домена, который можно смоделировать по способу переноса стиля в поле GAN;
  • Всего на картинке 4 сети, сеть F должна быть сетью извлечения признаков, сеть C — это сеть сегментации, сеть G — это сеть, которая восстанавливает признаки, извлеченные F, в исходное изображение, сеть D это классификационная сеть и общая сеть Разница между GAN заключается в том, что в D есть четыре классификации: истинный источник, истинная цель, ложный источник и ложная цель, Аналогично слиянию двух двухкатегорийных дискриминаторов в cycleGAN.

2 детали

Исходное изображение определяется какXX, образ исходного домена определяется какXsX^s, образ целевого домена определяется какXtX^t.

  • базовая сеть, Архитектура аналогична предварительно обученной VGG16 и разделена на две части: часть извлечения признаков называется сетью F, а сегментация пикселей называется сетью C.
  • Сеть G используется для восстановления исходного изображения из особенностей встраивания, сгенерированных F; сеть D не только должна различать, является ли изображение реальным или поддельным, но также выполняет задачу сегментации, аналогичную сети C. Эта задача сегментации предназначена только для исходного домена, поскольку в целевом домене нет меток.

Теперь предположим, что данные и метки готовы.Xs,Ys{X^s,Y^s}:

  • Во-первых, выражение признака извлекается с помощью F,F(Xs)F(X^s)
  • Сеть C генерирует сегментированные меткиY^s\hat{Y}^s
  • Изображение реконструкции сети GX^s\hat{X}^s

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

3 поражения

Авторы предлагают ряд потерь противника:

image.png

  • Потери внутри домена:
    • Потеря дискриминатора, различать src-real и src-fake;
    • Потеря дискриминатора, различить tgt-real и tgt-fake;
    • Потеря генератора, так что фальшивый источник может быть оценен дискриминатором как src-реальная потеря;
  • Потери в разных доменах:
    • Потеря сети F может привести к тому, что ввод фальшивого источника будет расценен как настоящая цель;
    • Потеря сети F может привести к тому, что ввод фальшивой цели будет расценен как реальный источник;

В дополнение к упомянутым выше состязательным потерям существуют следующие потери сегментации.:

  • LsegL_{seg}: попиксельная кросс-энтропийная потеря в стандартной сети сегментации C;
  • LauxL_{aux}:D Сеть также выдаст результат сегментации, потерю перекрестной энтропии;
  • LrecL_{rec}: потеря L1 между исходным и реконструированным изображениями.

4 Тренировочный процесс

На каждой итерации в модель подается случайный триплет:{Xs,Ys,Xt}\{X^s,Y^s,X^t\}, а затем сеть обновляет параметры в следующем порядке:

image.png

  1. Сначала обновите параметр D, и стратегия обновления выглядит следующим образом:
    • Для ввода источника используйтеLauxL_{aux}иLadv,DsL^s_{adv,D};
    • Для целевого ввода используйтеLadv,DtL^t_{adv,D}

image.png

  1. Затем обновите G, стратегия обновления следующая:
    • Обманув две потери дискриминатора,Ladv,GsL^s_{adv,G}иLadv,GtL^t_{adv,G};
    • потеря реконструкции,LrecsL^s_{rec}иLrectL^t_{rec};

image.png

  1. Стратегия обновления F-сети следующая:
    • Обновление сети F самое критичное! (упоминается в газете)

image.png

- 更新F网络是为了实现domain adaptive,$L^s_{adv,F}$是为了混淆fake source 和real target;
- 类似于G-D之间的min-max game,这里是F和D之间的竞争,只不过前者是为了混淆fake和real,后者是为了混淆source domain和target domain;

Мотивация дизайна 5 D

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

В недавнем GAN упоминался дискриминатор патчей (эта статья была прочитана ранее), это позволяет D выводить также двузначное количество, каждое значение представляет вероятность подделки или реального, соответствующего патчу, эта мераЗначительно улучшает качество изображений, реконструированных с помощью G, здесь наследует и расширяет идею дискриминатора патчей, выходное изображение представляет собой попиксельно аналогичный результат сегментации, каждый пиксель имеет четыре категории: fake-src, real-src, fake-tgt, real-tgt;

GAN, как правило, сложнее обучать.Специально для крупномасштабных данных реального изображениястабильный подход к обучению архитектуры генеративных моделейВспомогательный классификатор GAN (ACGAN) (отлично, я видел эту статью раньше), просто добавив вспомогательную потерю классификации, можно обучить более стабильную G, поэтому в D также есть потеря сегментацииLauxL_{aux}

6 Резюме

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