Предложенный вариант генеративно-состязательной сети
Генеративно-состязательная сеть Вассерштейна (WGAN) — это вариант генеративно-состязательной сети (GAN), предложенный в 2017 году, целью которого является «повышение стабильности обучения, устранение таких проблем, как коллапс мод, и предоставление осмысленных кривых обучения, полезных для отладки и поиска гиперпараметров». [1] [2]
По сравнению с оригинальным дискриминатором GAN, дискриминатор Вассерштейна GAN обеспечивает лучший обучающий сигнал для генератора. Это позволяет обучению быть более стабильным, когда генератор изучает распределения в очень высокоразмерных пространствах.
Мотивация
Игра GAN
Оригинальный метод GAN основан на игре GAN, игре с нулевой суммой с 2 игроками: генератором и дискриминатором. Игра определена на вероятностном пространстве , набор стратегий генератора — это набор всех вероятностных мер на , а набор стратегий дискриминатора — это набор измеримых функций .
Цель игры:
генератор стремится минимизировать его, а дискриминатор стремится максимизировать.
Теорема (оптимальный дискриминатор вычисляет расхождение Дженсена–Шеннона) — Для любой фиксированной стратегии генератора пусть оптимальный ответ будет , тогда
Повторите игру GAN много раз, каждый раз с генератором, движущимся первым, и дискриминатором, движущимся вторым. Каждый раз, когда генератор меняется, дискриминатор должен адаптироваться, приближаясь к идеалу
Поскольку нас действительно интересует , функция дискриминатора сама по себе довольно неинтересна. Она просто отслеживает отношение правдоподобия между распределением генератора и эталонным распределением. В равновесии дискриминатор просто постоянно выдает данные, отказавшись от попыток воспринять какую-либо разницу. [примечание 1]
Конкретно, в игре GAN давайте исправим генератор и улучшим дискриминатор шаг за шагом, причем дискриминатор будет на шаге . Тогда мы (в идеале) имеем так что мы видим, что дискриминатор на самом деле является нижнеграниченным .
Расстояние Вассерштейна
Таким образом, мы видим, что роль дискриминатора в основном заключается в предоставлении критиком обратной связи для генератора о том, «насколько он далек от совершенства», где «далек» определяется как расхождение Дженсена–Шеннона.
Естественно, это дает возможность использовать другой критерий удалённости. Существует множество возможных расхождений , из которых можно выбирать, например, семейство f-расхождений , которое даст f-GAN. [3]
Сеть GAN Вассерштейна получается с использованием метрики Вассерштейна , которая удовлетворяет «теореме о двойственном представлении», что делает ее вычисления весьма эффективными:
Теорема (двойственность Канторовича-Рубенштейна) — Когда вероятностное пространство является метрическим, то для любого фиксированного ,
где — норма Липшица .
Генератор идет первым, а дискриминатор — вторым. Генератор стремится минимизировать цель, а дискриминатор стремится максимизировать цель:
Согласно двойственности Канторовича-Рубенштейна, для любой стратегии генератора оптимальным ответом дискриминатора является , такой что Следовательно, если дискриминатор хорош, генератор будет постоянно подталкиваться к минимизации , и оптимальной стратегией для генератора будет как раз , как и должно быть.
Сравнение с GAN
В игре Вассерштейна GAN дискриминатор обеспечивает лучший градиент, чем в игре GAN.
Рассмотрим, например, игру на реальной линии, где и являются гауссовыми. Тогда оптимальный критик Вассерштейна и оптимальный дискриминатор GAN отображаются следующим образом:
Для фиксированного дискриминатора генератор должен минимизировать следующие цели:
Как показано, генератор в GAN мотивирован позволить себе «скатиться с пика» . Аналогично для генератора в GAN Вассерштейна.
Для Вассерштейна GAN, имеет градиент 1 почти везде, в то время как для GAN, имеет плоский градиент в середине и крутой градиент в других местах. В результате дисперсия для оценки в GAN обычно намного больше, чем в Вассерштейне GAN. См. также Рисунок 3 из. [1]
Проблема с гораздо более серьезна в реальных ситуациях машинного обучения. Рассмотрим обучение GAN для генерации ImageNet , коллекции фотографий размером 256 на 256. Пространство всех таких фотографий равно , а распределение изображений ImageNet, , концентрируется на многообразии гораздо меньшей размерности в нем. Следовательно, любая стратегия генератора почти наверняка будет полностью не пересекаться с , делая . Таким образом, хороший дискриминатор может почти идеально различать от , а также любые близкие к . Таким образом, градиент , не создавая обучающего сигнала для генератора.
Подробные теоремы можно найти в [4] .
Обучение Вассерштейн GAN
Обучение генератора в Вассерштейновском GAN — это просто градиентный спуск , такой же, как в GAN (или большинстве методов глубокого обучения), но обучение дискриминатора отличается, поскольку дискриминатор теперь ограничен ограниченной нормой Липшица. Для этого есть несколько методов.
Так как , то имеем , и, следовательно, верхнюю границу: Таким образом, если мы можем оценить сверху нормы операторов каждой матрицы, то мы можем оценить сверху норму Липшица .
Отсечение веса
Так как для любой матрицы , пусть , мы имеем , отсекая все элементы из в пределах некоторого интервала , мы можем ограничиться .
Это метод отсечения веса, предложенный в оригинальной статье. [1]
Спектральная нормализация
Спектральный радиус можно эффективно вычислить с помощью следующего алгоритма:
ВХОДНАЯ матрица и начальное предположение
Итерация до сходимости . Это собственный вектор с собственным значением .
ВОЗВРАЩАТЬСЯ
Переназначая после каждого обновления дискриминатора, мы можем ограничить сверху , и, таким образом, ограничить сверху .
Алгоритм можно еще больше ускорить с помощью мемоизации : на шаге сохранить . Затем на шаге использовать в качестве начального предположения для алгоритма. Поскольку очень близко к , поэтому близко к , поэтому это обеспечивает быструю сходимость.
Это метод спектральной нормализации. [5]
Штраф за градиент
Вместо строгого ограничения мы можем просто добавить термин «градиентный штраф» для дискриминатора в форме, где — фиксированное распределение, используемое для оценки того, насколько дискриминатор нарушил требование нормы Липшица. Дискриминатор, пытаясь минимизировать новую функцию потерь, естественным образом приблизится к везде, таким образом сделав .
Это метод градиентного штрафа. [6]
Дальнейшее чтение
От GAN к WGAN
Вассерштейн GAN и двойственность Канторовича-Рубинштейна
^ abc Арджовски, Мартин; Чинтала, Сумит; Ботту, Леон (2017-07-17). «Генеративно-состязательные сети Вассерштейна». Международная конференция по машинному обучению . PMLR: 214–223.
^ Венг, Лилиан (18 апреля 2019 г.). «От ГАН до ВГАН». arXiv : 1904.08994 [cs.LG].
^ Новозин, Себастьян; Чеке, Ботонд; Томиока, Рёта (2016). "f-GAN: Обучение генеративных нейронных сэмплеров с использованием минимизации вариационной дивергенции". Достижения в области нейронных систем обработки информации . 29. Curran Associates, Inc. arXiv : 1606.00709 .
^ Арджовски, Мартин; Ботту, Леон (01.01.2017). «К принципиальным методам обучения генеративно-состязательных сетей». arXiv : 1701.04862 .{{cite journal}}: Цитировать журнал требует |journal=( помощь )
^ Миято, Такеру; Катаока, Тошики; Кояма, Масанори; Ёсида, Юичи (16 февраля 2018 г.). «Спектральная нормализация для генеративно-состязательных сетей». arXiv : 1802.05957 [cs.LG].
^ Гулраджани, Ишаан; Ахмед, Фарук; Арджовски, Мартин; Дюмулен, Винсент; Курвиль, Аарон С. (2017). «Улучшенное обучение сетей Вассерштейна GAN». Достижения в области нейронных систем обработки информации . 30. Curran Associates, Inc.
Примечания
^ На практике генератор никогда не сможет достичь идеальной имитации, поэтому у дискриминатора будет мотивация для восприятия разницы, что позволит использовать его для других задач, таких как выполнение классификации ImageNet без наблюдения .
^ На практике это делается не так, поскольку в общем случае это неразрешимо, но теоретически это поучительно.