Слой нормализации экземпляра
Слой нормализации экземпляра нормирует мини-пакет данных через каждый канал для каждого наблюдения независимо. Чтобы улучшить сходимость обучения сверточная нейронная сеть и уменьшать чувствительность к сетевым гиперпараметрам, используйте слои нормализации экземпляра между сверточными слоями и нелинейностью, такой как слои 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