Если мы можем обрезать градиент в WGAN, зачем беспокоиться о WGAN-GP? - PullRequest
1 голос
/ 06 ноября 2019

Я работаю над WGAN и хотел бы реализовать WGAN-GP.

В своей первоначальной статье WGAN-GP реализован с градиентным штрафом из-за ограничения 1-Lipschitiz. Но такие пакеты, как Keras, могут обрезать градиентную норму в 1 (что по определению эквивалентно ограничению 1-Lipschitiz), так почему же мы пытаемся штрафовать градиент? Почему бы нам просто не обрезать градиент?

1 Ответ

0 голосов
/ 06 ноября 2019

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

Если c мало, то веса будут сильно обрезаны до крошечного диапазона значений. Вопрос в том, как определить подходящее значение c . Это зависит от вашей модели, набора данных в вопросе, процедуры обучения и так далее, и так далее. Так почему бы не попробовать мягкое наказание вместо жесткого отсечения? Вот почему в документе WGAN-GP вводится дополнительное ограничение для функции потерь, которая заставляет норму градиента быть как можно ближе к 1 , что позволяет избежать жесткого свертывания до предопределенных значений.

...