Слой нормализации экземпляра
Слой нормализации экземпляра нормирует мини-пакет данных через каждый канал для каждого наблюдения независимо. Чтобы улучшить сходимость обучения сверточная нейронная сеть и уменьшать чувствительность к сетевым гиперпараметрам, используйте слои нормализации экземпляра между сверточными слоями и нелинейностью, такой как слои ReLU.
После нормализации слой масштабирует вход с learnable масштабным коэффициентом γ и переключает его learnable смещением β.
layer = instanceNormalizationLayer создает слой нормализации экземпляра.
layer = instanceNormalizationLayer(Name,Value) создает слой нормализации экземпляра и устанавливает дополнительный Epsilon, Параметры и инициализация, скорость обучения и регуляризация и Name свойства с помощью одних или нескольких аргументов name-value. Можно задать несколько аргументов name-value. Заключите каждое имя свойства в кавычки.
instanceNormalizationLayer('Name','instancenorm') создает слой нормализации экземпляра с именем 'instancenorm'Операция нормализации экземпляра нормирует элементы xi входа первым вычислением среднего μI и отклонения σI2 по пространственным и измерениям времени для каждого канала в каждом наблюдении независимо. Затем это вычисляет нормированные активации как
где ϵ является константой, которая улучшает числовую устойчивость, когда отклонение очень мало.
Допускать возможность, что входные параметры с нулевым средним значением и модульным отклонением не оптимальны для операций, которые следуют за нормализацией экземпляра, операция нормализации экземпляра дальнейшие сдвиги и масштабируют активации с помощью преобразования
где смещение β и масштабный коэффициент, γ является настраиваемыми параметрами, которые обновляются во время сетевого обучения.
trainNetwork | trainingOptions | reluLayer | convolution2dLayer | fullyConnectedLayer | batchNormalizationLayer | groupNormalizationLayer | layerNormalizationLayer