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