Adversarial training (состязательное обучение)
Adversarial training (состязательное обучение) — метод, при котором две нейросети учатся друг против друга: генератор создаёт данные, дискриминатор их разоблачает. Лежит в основе GAN и adversarial-лосса в апскейле (ESRGAN) и восстановлении лиц (GFPGAN).
Adversarial training (состязательное, или антагонистическое обучение) — парадигма машинного обучения, при которой две нейросети обучаются в противостоянии друг другу. Одна сеть (генератор) пытается создать данные, неотличимые от настоящих, а вторая (дискриминатор) — научиться отличать сгенерированное от реального. Это «игра с нулевой суммой»: выигрыш одной сети — проигрыш другой, и по мере обучения обе становятся сильнее.
Механика состязания
Обучение идёт итеративно, шаг за шагом:
- Дискриминатор получает и реальные картинки, и подделки генератора, учится ставить им метку «real/fake».
- Генератор получает обратный сигнал (adversarial loss) и корректирует веса так, чтобы обмануть дискриминатор.
- С каждым шагом граница между «настоящим» и «сгенерированным» смещается, заставляя генератор производить всё более реалистичный результат.
Эта схема — сердце GAN (генеративно-состязательных сетей), но adversarial-компонент давно вышел за пределы «чистых» GAN и встраивается в другие архитектуры как дополнительный лосс.
Adversarial loss в реставрации фото
В задачах апскейла и восстановления лиц чистая оптимизация по пиксельной ошибке (L1/L2) даёт «замыленный» результат — сеть усредняет все правдоподобные варианты. Adversarial loss решает это: дискриминатор штрафует размытые, «неестественные» текстуры, толкая генератор к резким и правдоподобным деталям. Так работают:
- Real-ESRGAN — апскейл с комбинацией pixel + perceptual + adversarial лоссов, за счёт чего генерирует убедительную фактуру кожи, ткани, листвы.
- GFPGAN — восстановление лиц, где adversarial-обучение и facial prior дают резкие черты вместо «пластиковой» кожи.
Типичные проблемы
Состязательное обучение известно своей нестабильностью:
- Mode collapse — генератор находит одну «удобную» подделку и повторяет её, теряя разнообразие.
- Неустойчивость — если одна сеть обгоняет другую, обучение «разваливается»; требуется тонкая настройка learning rate и специальные приёмы (WGAN-GP, spectral normalization).
- Галлюцинации деталей — сеть может «дорисовать» несуществующие черты, что критично при реставрации архивных фото.
Adversarial training vs диффузия
С 2022 года диффузионные модели потеснили GAN в генерации: обучение диффузии стабильнее и не страдает от mode collapse. Но adversarial-подход не исчез — его используют как ускоритель (adversarial distillation превращает медленную диффузию в 1–4 шага) и как финишный refiner для повышения резкости. Отдельно термин «adversarial» встречается в безопасности ИИ — adversarial examples, специально сконструированные входы, обманывающие классификаторы; это родственная, но самостоятельная тема.