глоссарий

Instance Normalization

Instance Normalization

Нейросети, как и люди, работают лучше с однородными данными. Instance Normalization — метод нормализации, при котором каждый образец (например, изображение) обрабатывается по своим собственным статистикам, независимо от других.

Зачем это нужно? В генеративных задачах — переносе стиля, синтезе изображений — модель встречает картинки разной яркости, контраста, цветовой гаммы. Batch Normalization усредняет статистику по всему батчу, из-за чего детали конкретного снимка могут «размыться». Instance Normalization лишена этого недостатка: она подстраивается под каждый кадр отдельно, делая обучение стабильнее, а результат выразительнее.

Как это работает интуитивно? Пусть есть фото, разбитое на каналы RGB. Для каждого канала нейросеть вычисляет среднее и разброс значений по всем пикселям именно этого изображения. Затем вычитает среднее и делит на разброс. Канал получает нулевое среднее и единичное отклонение. Никакие другие картинки не используются — только ваша. Это как настроить громкость каждого трека индивидуально, а не подгонять все песни под усреднённую.

Пример — приложения, превращающие фото в «картину Ван Гога». Instance Normalization помогает сети разделить содержание снимка и стиль. Нормализуя признаки каждого изображения отдельно, модель отбрасывает специфику исходного фото (освещение, цветовую гамму) и заменяет её на черты стилевого образца, сохраняя узнаваемые объекты.

Итог: Instance Normalization — компактный и эффективный инструмент для генеративных сетей. Он решает проблему «зацикливания» на статистике отдельного входа, не требует больших вычислений, но заметно улучшает качество изображений и скорость обучения. Поэтому метод прочно занял место в современных алгоритмах синтеза.