Представленный сегодня проект github с открытым исходным кодом в основном реализует код визуализации процесса обучения GAN.Ссылка на проект выглядит следующим образом:
Ниже приводится краткое введение в положение этого кода, основные функции, эффекты и т. д.
предисловие
Вот экспериментальный код, который просто реализует обучение и визуализацию 2d GAN. После обучения StyleGAN в течение десятков часов теперь можно визуально визуализировать некоторые гиперпараметры с быстрыми итерациями (около 30 с) (но не уверен, что эта интуитивно понятная ситуация может быть применена к более крупным моделям GAN). главным образомpoloclub.github.io/ganlab/, но кто-то может предпочесть запускать код в Colab.
визуализация
Визуализация динамического процесса обучения включает в себя:
- Распределение реальных данных (черные точки)
- Введите фиксированный шум, затем поддельные данные, сгенерированные сетью G;
- Граница решения сети D для всего входного пространства и вероятность ее выхода, представленные разными цветами (красный цвет представляет высокую вероятность того, что его расценивают как реальные данные, синий - низкую)
- Зеленые стрелки указывают каждую сгенерированную точку данных, направление, которое максимизирует выход D-сети.
Визуализируйте результаты
Далее следует показать некоторые эффекты визуализации:
Учебная ситуация G и D без батч-нормы
Добавлена тренировочная ситуация G и D с пакетной нормой
Визуализация критериев оценки
Первая строка — процесс обучения (ввод — фиксированный шум) и различные критерии (нормализация градиента для G и D, потери и вывод D для реальных и ложных данных). Во второй строке показан входной шум и функция активации среднего слоя сети G (сопоставленная с 2D).
Преобразование G-сетей с входным шумом
отлаживаемые параметры
- Распределение входных данных
- размер партии, периоды обучения
- Скорость обучения для D и G (вероятно, самая важная)
- Оптимизатор для D и G
- распределение входного шума
- количество нейронов, функция активации
- Функция потерь (BCE, L2)
- Инициализация веса
- Регуляризация (норма партии, отсев, снижение веса)
ЦП был использован, потому что эксперименты с визуализацией уже соответствовали требованиям скорости.
Будущая работа
- Добавьте больше функций потерь
- Добавьте больше методов регуляризации
Код проекта можно посмотреть прямо на github или ответить в фоновом режиме моего официального аккаунта"play_gans", чтобы получить код.
Добро пожаловать в мой общедоступный аккаунт WeChat--Рост алгоритма обезьяны, или отсканируйте QR-код ниже, чтобы общаться, учиться и развиваться вместе!