Пакетная нормализация

редактировать

Пакетная нормализация (также известная как пакетная нормализация ) - это метод, использование для создания искусственные нейронные сети быстрее и стабильнее за счет настройки входного слоя повторного центрирования и повторного масштабирования. Он был предложен Сергеем Иоффе и Кристианом Сегеди в 2015 году.

Хотя эффект пакетной нормализации очевиден, причины его остаются предметом обсуждения. Считается, что это может смягчить проблему внутреннего ковариатного сдвига, когда инициализация параметров и изменений в распределении входов каждого уровня на скорость обучения сети. Увеличивает производительность, недавно некоторые утверждают, что улучшила производительность. Однако при инициализации пакетной процедуры по вызову серьезный взрыв градиента в глубоких сетях, который смягчается только пропуском соединений в остаточных сетях. Другие утверждают, что пакетная нормализация обеспечивает разделение длины и направления и тем самым ускоряет нейронные сети.

После пакетной нормы были введены многие другие методы внутриуровневой нормализации, такие как нормализация экземпляра, нормализация слоя, нормализация группы.

Содержание
  • 1 Мотивация: явление внутреннего ковариантного сдвига
  • 2 Процедуры
    • 2.1 Пакетное нормализующее преобразование
    • 2.2 Обратное распространение
    • 2.3 Вывод с использованием пакетно-нормализованных сетей
  • 3 Понимание пакетной нормализации
    • 3.1 Пакетная стабилизация и внутренний ковариальный сдвиг
      • 3.1.1 Добавление ковариантного сдвига к слоям пакетной стабилизации
      • 3.1.2 Измерение внутреннего ковариального сдвига со слоями пакетной нормализации и без них
    • 3.2 Сглаженность оптимизационного процесса
    • 3.3 Контролирующая грубость оптимизационного ландшафта при инициализации
      • 3.4 Разделение длины и направления
        • 3.4.1 Линейная сходимость задачи наименьшихратов с пакетной нормализацией
        • 3.4.2 Линейная сходимость задачи обучающего полупространства с пакетной Нормализация
        • конвергенция нейронных сетей с пакетной нормализацией
    • 4 ссылки
    Мотивация: явление внутреннего ковариатного сдвига

    Каждый уровень нейронной сети имеет входы с корр. соответствующее распределение, которое происходит в процессе обучения, влияет на случайность в инициализации и случайность во входных данных. Влияние этих ресурсов на распределение входных данных во внутренние слои во время обучения описывается как внутренний ковариативный сдвиг . Хотя четкое определение, похоже, отсутствует, наблюдается наблюдаемый в экспериментах, - это изменение средних значений и дисперсии входных данных во внутренних слоях во время обучения.

    Первоначально предложена пакетная нормализация для уменьшения внутреннего ковариантного сдвига. На этапе обучения сетей, когда параметры разных слоев изменяются, изменяется и формируется текущий слой данных для текущего уровня, так что текущий слой должен постоянно подстраиваться под новые распределения. Эта проблема особенно серьезна для глубоких сетей, потому что небольшие изменения в более мелких скрытых слоях будут усиливаться по мере их распространения в сети, что приводит к значительному сдвигу в более глубоких скрытых слоях. Предложите метод пакетной стабилизации, чтобы уменьшить эти удобные сдвиги, чтобы ускорить обучение и создать более надежные модели.

    Считается, что помимо уменьшения внутреннего ковариатного сдвига, пакетная нормализация привносит много других преимуществ. С помощью этой дополнительной операции может использоваться более скорость обучения без исчезновения или увеличения градиентов. Кроме того, пакетная нормализация, по-видимому, имеет регуляризирующий эффект, так что сеть улучшает свои общие свойства, таким образом, нет необходимости использовать dropout для уменьшения переобучения. Также было замечено, что с пакетной нормой сеть становится более устойчивой к схемам инициализации и скорости обучения.

    Процедуры

    Пакетное нормализующее преобразование

    В нейронной сети пакетная нормализация достигается с помощью шага нормализации, который фиксирует средние и дисперсии входных данных каждого уровня. В идеале нормализация должна проводиться по всему обучающему набору, но для использования этого шага совместно с методами стохастической оптимизации непрактично использовать глобальную информацию. Таким образом, нормализация ограничивается каждой мини-серией в процессе обучения.

    Используйте B для обозначения минипакета размером всего обучающего набора. Таким образом, эмпирическое среднее и дисперсия B можно обозначить как

    μ B = 1 м ∑ i = 1 mxi {\ displaystyle \ mu _ {B} = {\ frac { 1} {m}} \ sum _ {i = 1} ^ {m} x_ {i}}{\ displaystyle \ му _ {B} = {\ гидроразрыва {1} {m}} \ sum _ {i = 1} ^ {m} x_ {i}} и σ B 2 = 1 m ∑ i = 1 m (xi - μ B) 2 {\ displaystyle \ sigma _ {B} ^ {2} = {\ frac {1} {m}} \ sum _ {i = 1} ^ {m} (x_ {i} - \ mu _ {B}) ^ {2}}{\ displaystyle \ sigma _ {B} ^ {2} = {\ frac {1} {m}} \ sum _ {i = 1} ^ {m} (x_ { i} - \ mu _ {B}) ^ {2}} .

    Для уровня сети с d-мерным входом x = (x (1),..., x (d)) {\ displaystyle x = (x ^ {(1)},..., x ^ {(d)})}{\ displaystyle x = (x ^ {(1)},..., x ^ {(d)})} , каждое измерение его входных данных нормализуется (т.е. повторно центрируется и масштабируется) отдельно,

    x ^ я (К) знак равно Икс (К) - μ В (К) σ В (К) 2 + ϵ {\ Displaystyle {\ Hat {x}} _ {я} ^ {(к)} = {\ гидроразрыва {x_ {i} ^ {( k)} - \ mu _ {B} ^ {(k)}} {\ sqrt {\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon}}}}{\ displaystyle {\ hat {x}} _ {i} ^ {(k)} = {\ frac {x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)}} {\ sqrt {\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon}}}} , где k ∈ [1, d] {\ displaystyle k \ in [1, d]}{\ displaystyle k \ in [1, d]} и i ∈ [1, m] {\ displaystyle я \ in [1, m]}{\ displaystyle i \ in [1, m]} ; μ B (k) {\ displaystyle \ mu _ {B} ^ {(k)}}{\ displaystyle \ mu _ {B} ^ {(k)}} и σ B (k) 2 {\ displaystyle \ sigma _ {B} ^ {(k) ^ {2}}}{\ displaystyle \ sigma _ {B} ^ {(k) ^ {2}}} - это среднее значение а и дисперсия соответственно.

    ϵ {\ displaystyle \ epsilon}\ epsilon добавляется в знаменатель для числовой стабильности и произвольно малой константой. Полученная нормализованная активация x ^ (k) {\ displaystyle {\ hat {x}} ^ {(k)}}{ \ displaystyle {\ hat {x}} ^ {(k)}} имеет нулевое среднее значение и единичную дисперсию, если ϵ {\ displaystyle \ epsilon}\ epsilon не учитывается. Чтобы восстановить репрезентативную мощность сети, затем следует этап преобразования:

    yi (k) = γ (k) x ^ i (k) + β (k) {\ displaystyle y_ {i} ^ {(k)} = \ gamma ^ {(k)} {\ hat {x}} _ {i} ^ {(k)} + \ beta ^ {(k)}}{\ displaystyle y_ {i} ^ {(k)} = \ gamma ^ {(k)} {\ hat {x}} _ {i} ^ {(k)} + \ beta ^ {(k)}} ,

    где параметры γ (k) {\ displaystyle \ gamma ^ {(k)}}{\ displaystyle \ gamma ^ {(k)}} и β (k) {\ displaystyle \ beta ^ {(k)}}{\ displaystyle \ beta ^ {(k)}} имеют изучаются при оптимизации.

    Формально операция, реализующая пакетную нормализацию, представляет собой преобразование BN γ (k), β (k): x 1... m (k) → y 1... m (k) { \ Displaystyle BN _ {\ gamma ^ {(k)}, \ beta ^ {(k)}}: x_ {1... m} ^ {(k)} \ rightarrow y_ {1... m} ^ { (k)}}{\ displaystyle BN _ {\ gamma ^ {(k)}, \ beta ^ {(k)}}: x_ {1... m} ^ {(k)} \ стрелка вправо y_ {1... m} ^ {(k)}} вызывает преобразование пакетной нормализации. Результат преобразования BN y (k) = BN γ (k), β (k) (x (k)) {\ displaystyle y ^ {(k)} = BN _ {\ gamma ^ {(k)}, \ beta ^ {(k)}} (x ^ {(k)})}{\ displaystyle y ^ {(k)} = BN _ {\ gamma ^ {(k)}, \ beta ^ {(k)}} (x ^ {(k)})} затем передается на другие сетевые уровни, тогда как нормализованный вывод x ^ i (k) {\ displaystyle {\ hat {x}} _ {i} ^ {(k)}}{\ displaystyle {\ hat {x}} _ {я} ^ {(k)}} остается внутренним по отношению к текущему слою.

    Обратное распространение

    Описанное преобразование BN дифференцируемой операцией, и градиент потерь l по отношению к различным параметрам может быть вычислен непосредственно с помощью правила цепочки.

    В частности, ∂ l ∂ yi (k) {\ displaystyle {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}}}{\ displaystyle {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}}} зависит от выбора функции активации, а градиент по отношению к другим параметрам может быть выражен как функция от ∂ l ∂ yi (k) {\ displaystyle {\ гидроразрыва {\ partial l} {\ partial y_ {i} ^ {(k)}}}}{\ displaystyle {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}}} :

    ∂ l ∂ x ^ i (k) = ∂ l ∂ yi (k) γ (k) {\ displaystyle {\ frac {\ partial l) } {\ partial {\ hat {x}} _ {i} ^ {(k)}}} = {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}} \ gamma ^ {(к)}}{\ displaystyle {\ frac {\ partial l} {\ partial {\ hat {x}} _ {i} ^ {(k)}} } = {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}} \ gamma ^ {(k)}} ,

    ∂ l ∂ γ (k) = ∑ я = 1 м ∂ l ∂ yi (k) x ^ i (k) {\ displaystyle {\ frac {\ partial l} {\ partial \ гамма ^ {(k)}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}} {\ hat {x }} _ {i} ^ {(k)}}{\ displaystyle {\ frac {\ partial l} {\ partial \ gamma ^ {(k)}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} { \ partial y_ {i} ^ {(k)}}} {\ hat {x}} _ {i} ^ {(k)}} , ∂ l ∂ β (к) знак равно ∑ я знак равно 1 м ∂ l ∂ yi (k) {\ displaystyle {\ frac {\ номинал tial l} {\ partial \ beta ^ {(k)}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}}}{\ displaystyle {\ frac {\ partial l} {\ partial \ beta ^ {(k)}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} {\ partial y_ {i} ^ {(к)}}}} ,. ∂ l ∂ σ B (k) 2 = ∑ i = 1 m ∂ l ∂ Yi (к) (xi (k) - μ B (k)) (- γ (k) 2 (σ B (к) 2 + ϵ) - 3/2) {\ displaystyle {\ frac {\ partial l } {\ partial \ sigma _ {B} ^ {(k) ^ {2}}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}} (x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)}) \ left (- {\ frac {\ gamma ^ {(k)}}) {2}} (\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon) ^ {- 3/2} \ right)}{\ displaystyle {\ frac {\ partial l} {\ partial \ sigma _ {B} ^ {(k) ^ {2}}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} {\ частичный y_ {i} ^ {(k)}}} (x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)}) \ left (- {\ frac {\ gamma ^ {(к)}} {2}} (\ sigma _ {B} ^ {(k) ^ {2}} + \ эпсилон) ^ {- 3/2} \ справа)} , ∂ l ∂ μ B (k) = ∑ i = 1 m ∂ l ∂ yi (k) - γ σ B (k) 2 + ϵ + ∂ l ∂ σ B (k) 2 1 ì я знак равно 1 м (- 2) ⋅ (xi (k) - μ В (к)) {\ Displaystyle {\ frac {\ partial l} {\ partial \ mu _ {B} ^ {(k)}}} = \ sum _ {i = 1} ^ {m} {\ frac { \ partial l} {\ partial y_ {i} ^ {(k)}}} {\ frac {- \ gamma} {\ sqrt {\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon }}} + {\ frac {\ partial l} {\ partial \ sigma _ {B} ^ {(k) ^ {2}}}} {\ frac {1 } {m}} \ sum _ {i = 1} ^ {m} (- 2) \ cdot (x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)})}{\ displaystyle {\ frac { \ partial l} {\ partial \ mu _ {B} ^ {(k)}}} = \ sum _ {i = 1} ^ {m} {\ frac {\ partial l} {\ partial y_ {i} ^ {(k)}}} {\ frac {- \ gamma} {\ sqrt {\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon}}} + {\ frac {\ partial l} {\ partial \ sigma _ {B} ^ {(k) ^ {2}}}} {\ frac {1} {m}} \ sum _ {i = 1} ^ {m} (- 2) \ cdot ( x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)})} ,

    и ∂ l ∂ xi (k) = ∂ l ∂ x ^ i (k) 1 σ B (k) 2 + ϵ + ∂ l ∂ σ B (k) 2 2 (xi (k) - μ В (к)) м + ∂ l ∂ μ В (к) 1 м {\ Displaystyle {\ frac {\ partial l} {\ partial x_ {i} ^ {(k)}}} = {\ frac {\ partial l} {\ partial {\ hat {x}} _ {i} ^ {(k)}}} {\ frac {1} {\ sqrt {\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon}}} + {\ frac {\ partial l} {\ partial \ sigma _ {B} ^ {(k) ^ {2}}}} {\ frac {2 (x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)})} {m}} + {\ frac {\ partial l} {\ partial \ mu _ {B} ^ {(k)}}} {\ frac {1} {m}}}{\ displaystyle {\ frac {\ partial l} {\ partial x_ {i} ^ {(k) }}} = {\ frac {\ partial l} {\ partial {\ hat {x}} _ {i} ^ {(k)}}} {\ frac {1} {\ sqrt {\ sigma _ {B} ^ {(k) ^ {2}} + \ epsilon}}} + {\ frac {\ partial l} {\ partial \ sigma _ {B} ^ {(k) ^ {2}}}} {\ frac { 2 (x_ {i} ^ {(k)} - \ mu _ {B} ^ {(k)})} {m}} + {\ frac {\ partial l} {\ partial \ mu _ {B} ^ {(k)}}} {\ frac {1} {m}}} .

    Логический вывод с пакетно-нормализованными сетями

    На этапе обучения шагов нормализации использования от мини-пакетов для эффективного и надежного обучения. Однако на этапе вывода этой зависимости больше не используется. Вместо этого этапа измерения на этом этапе вычисляются выходные данные из входных данных детерминированным образом. Среднее значение генеральной совокупности E [x (k)] {\ displaystyle E [x ^ {(k)}]}{\ displaystyle E [x ^ {(k)}]} и дисперсия Var ⁡ [x (k)] {\ displaystyle \ operatorname {Var} [x ^ {(k)}]}{\ displaystyle \ operatorname {Var} [x ^ {(k)}]} , вычисляются как:

    E [x (k)] = EB [μ B (k)] {\ displaystyle E [x ^ {(k)}] = E_ {B} [\ mu _ {B} ^ {(k)}]}{\ displaystyle E [x ^ {(k)}] = E_ {B} [ \ mu _ {B} ^ {(k)}]} и Var ⁡ [x (k)] = мм - 1 EB [σ B (k) 2] {\ displaystyle \ operatorname {Var} [x ^ {(k)}] = {\ frac {m} {m-1}} E_ {B} [\ sigma _ {B} ^ {(k) ^ {2}}]}{\ displaystyle \ operatorname {Var} [x ^ { (k)}] = {\ гидроразрыва {m} {m-1}} E_ {B} [\ sigma _ {B} ^ {(k) ^ {2}}]} .

    Таким образом, статистика является полным представлением мини-партий.

    Таким образом, преобразование BN на этапе вывода становится

    y (k) = BN γ (k), β (k) inf (x (k)) = γ (k) Var ⁡ [x ( к)] + ϵ Икс (К) + (β (К) - γ (К) Е [Икс (К)] Вар ⁡ [Икс (К)] + ϵ) {\ Displaystyle у ^ {(к)} = BN_ {\ gamma ^ {(k)}, \ beta ^ {(k)}} ^ {\ text {inf}} (x ^ {(k)}) = {\ frac {\ gamma ^ {(k)}} {\ sqrt {\ operatorname {Var} [x ^ {(k)}] + \ epsilon}}} x ^ {(k)} + {\ Bigg (} \ beta ^ {(k)} - {\ frac { \ gamma ^ {(k)} E [x ^ {(k)}]} {\ sqrt {\ operatorname {Var} [x ^ {(k)}] + \ epsilon}}} {\ Bigg)}}{\ displaystyle y ^ {(k)} = BN _ {\ gamma ^ {(k)}, \ beta ^ {(k)}} ^ {\ text {inf}} (x ^ {(k)}) = {\ frac {\ gamma ^ {(k)}} {\ sqrt {\ operatorname {Var} [x ^ {(k)}] + \ epsilon}}} x ^ {(k)} + {\ Bigg (} \ beta ^ {(k)} - {\ frac {\ gamma ^ {(k)} E [x ^ {(k)}]} {\ sqrt {\ operatorname {Var} [x ^ {(k)}] + \ epsilon}}} {\ Bigg)}} ,

    где y (k) {\ displaystyle y ^ {(k)}}{\ displaystyle y ^ {(k)}} передается будущим слоям вместо x (k) {\ displaystyle x ^ {(k)}}x ^ {(k)} . В этом преобразовании параметры фиксированы, процедура пакетной стабилизации по существу применяет активацию линейное преобразование.

    Общие сведения о пакетной нормализации

    Хотя пакетная информация стала популярным методом из-за своих сильных сторон, рабочий механизм метода еще недостаточно понят. Ученые показывают, что внутренний ковариативный показатель не уменьшается при распространенном мнении, несмотря на распространенное мнение. Некоторые ученые приписывают хорошие показатели расчетных функций, в то время как другие предполагают, что разделение направления длины и длины являются причиной его эффективности.

    Пакетная нормализация и внутренний ковариальный сдвиг

    Корреляция между пакетной стабилизацией и внутренним ковариальным сдвигом широко распространен, но не подтвержден экспериментальными результатами. Ученые недавно с помощью экспериментов показали, что предполагаемая связь не точна. Скорее, повышенная точность слоя пакетной стабилизации, по-видимому, не зависит от внутреннего ковариатного сдвига.

    Добавление ковариантного сдвига к слоям пакетной нормализации

    Чтобы понять, есть ли какая-либо корреляция между уменьшением ковариатного сдвига и улучшением производительности, проводится эксперимент для выясненияи. В частности, обучаются и сравниваются три модели: стандартная сеть VGG без пакетной стабилизации, сеть VGG со слоями пакетной нормализации и сеть VGG со слоями пакетной нормализации и случайным шумом. В третьей модели шум имеет ненулевое среднее значение и неединичную дисперсию и создается случайным образом для каждого слоя. Затем он добавлен после нормализации среды, чтобы добиться намеренно ковариативный сдвиг в активацию.

    С этими тремя моделями два наблюдения. Во-первых, третья, зашумленная модель имеет менее стабильные распределения всех уровней по сравнению с другими моделями из-за дополнительного слоя шума. Несмотря на шум, точность обучения второй модели схожа и выше, чем у первой модели. Хотя внутренние ковариатные сдвиги больше на всех уровнях, модель с пакетной нормализацией по-прежнему работает лучше, чем стандартная модель VGG. Таким образом, можно сделать вывод, что внутренний ковариационный сдвиг не может быть фактором, влияющим на производительность пакетной нормализации.

    Измерение внутреннего ковариационного сдвига с использованием пакетной стабилизации и без них

    Так как урегулирование внутреннего ковариационного сдвига уменьшает внутренний ковариационный сдвиг, проведенный эксперимент, чтобы количественно измерить, насколько большим ковариативный сдвиг. Во-первых, необходимо математически определить понятие внутреннего ковариатного сдвига. В частности, для количественной оценки корректировки, параметры слоя вносят в ответ на обновления в предыдущих слоях, измеряется корреляция между градиентами потерь до и после обновления всех предыдущих слоев, как градиенты фиксируют сдвиги от первого порядка обучения. метод.

    Корреляция между градиентами вычисляется для четырех моделей: стандартные сети VGG, сети VGG со слоями пакетной нормализации, 25-слойной глубокой линейной сетью (DLN), обученной полным пакетным градиентным спуском, и DLN-сетью со слоями пакетной нормализации. Интересно, что показано, что стандартные модели VGG и DLN имеют более высокий уровень корреляции градиентов по с их аналогами, что указывает на то, что дополнительные уровни пакетной нормализации не уменьшают внутренний ковариационный сдвиг.

    Гладкость оптимизационного ландшафта

    Некоторые ученые предложили и доказали, что пакетная нормализация может внести большую липшицевость в потери и градиент во время обучения. Эти эффекты можно наблюдать, сравнивая сети VGG, обученные с помощью пакетной стабилизации и без нее, а также согласуется с другими сетями такими как линейные глубокие сети. В частности, наблюдается, что потери меняются меньше, а градиенты имеют меньшие величины и более липшицевы. Более того, пакетные нормализованные модели сравниваются с моделями с помощью различных методов нормализации. В частности, эти методы нормализации работают, сначала фиксируя момент активации первого порядка, а затем нормализуя его на среднее значение нормы l p {\ displaystyle l_ {p}}{\ displaystyle l_ {p}} . Таким образом, эти методы имеют больший сдвиг распределения, но более плавный ландшафт. Эти модели дают такую ​​же производительность, что и нормализованные модели. Таким образом, эта двусторонняя связь может указывать на то, что гладкость оптимизационного ландшафта может быть фактором, способствующим превосходной производительности пакетной нормализации.

    Помимо экспериментального анализа этой корреляции, также предлагается теоретический анализ для проверки, что пакетная калибровка может привести к более плавному ландшафту. Рассмотрим две идентичные сети, одна из которых приводит к увеличению количества пакетов, а другая - нет, сравнивается поведение этих двух сетей. Обозначим функции потерь как L {\ displaystyle L}{\ displaystyle L} и L ^ {\ displaystyle {\ hat {L}}}{\ displaystyle {\ hat {L}}} соответственно. Пусть входом в обе сети будет x {\ displaystyle x}{\ displaystyle x} , а на выходе - y {\ displaystyle y}{\ displaystyle y} , для которого y = W x {\ displaystyle y = Wx}{\ displaystyle y = Wx} , где W {\ displaystyle W}W - вес слоя. Для второй сети y {\ displaystyle y}{\ displaystyle y} также проходит через уровень пакетной нормализации. Обозначьте нормализованную активацию как y ^ {\ displaystyle {\ hat {y}}}{\ displaystyle {\ hat {y}}} , что имеет нулевое среднее значение и единичную дисперсию. Пусть преобразованная активация будет z = γ y ^ + β {\ displaystyle z = \ gamma {\ hat {y}} + \ beta}{\ displaystyle z = \ gamma {\ hat {y}} + \ beta} , и предположим, что γ {\ displaystyle \ гамма}{\ displaystyle \ gamma} и β {\ displaystyle \ beta}{\ displaystyle \ beta} - константы. Наконец, обозначим стандартное отклонение для мини-партии yj ^ ∈ R m {\ displaystyle {\ hat {y_ {j}}} \ in \ mathbb {R} ^ {m}}{\ displaystyle {\ hat {y_ {j}}} \ in \ mathbb {R} ^ {m}} как σ j {\ displaystyle \ sigma _ {j}}{\ displaystyle \ sigma _ {j}} .

    Во-первых, можно показать, что величина градиента пакетной нормализованной сети, | | ▽ y i L ^ | | {\ displaystyle || \ triangledown _ {y_ {i}} {\ hat {L}} ||}{\ displaystyle || \ triangledown _ {y_ {i}} {\ hat {L}} ||} ограничен, причем граница выражена как

    | | ▽ y i L ^ | | 2 ≤ γ 2 σ J 2 (| | ▽ yi L | | 2 - 1 м ⟨1, ▽ yi L⟩ 2 - 1 м ⟨▽ yi L, y ^ j⟩ 2) {\ displaystyle || \ triangledown _ {y_ {i}} {\ hat {L}} || ^ {2} \ leq {\ frac {\ gamma ^ {2}} {\ sigma _ {j} ^ {2}}} {\ Bigg (} | | \ triangledown _ {y_ {i}} L || ^ {2} - {\ frac {1} {m}} \ langle 1, \ triangledown _ {y_ {i}} L \ rangle ^ {2} - {\ frac {1} {m}} \ langle \ triangledown _ {y_ {i}} L, {\ hat {y}} _ {j} \ rangle ^ {2} {\ bigg)}}{\ displaystyle || \ triangledown _ {y_ {i}} {\ hat {L}} || ^ {2} \ leq {\ frac {\ gamma ^ {2}} {\ sigma _ {j} ^ {2}}} {\ Bigg (} || \ triangledown _ {y_ {i}} L || ^ {2} - {\ frac {1} {m}} \ langle 1, \ triangledown _ {y_ {i}} L \ rangle ^ {2} - {\ frac {1} {m}} \ langle \ triangledown _ {y_ {i}} L, {\ hat {y}} _ {j} \ rangle ^ {2} {\ bigg)}} .

    Временная величина градиента представляет липшицевость потерь, это соотношение указывает, что пакетная нормализованная сеть может сравнительно достичь большей липцевости. Обратите внимание, что граница становится более жесткой, когда градиент ▽ yi L ^ {\ displaystyle \ triangledown _ {y_ {i}} {\ hat {L}}}{\ displaystyle \ triangledown _ {y_ {i}} {\ hat {L}}} коррелирует с активацией yi ^ {\ displaystyle {\ hat {y_ {i}}}}{\ displaystyle {\ hat {y_ {i}}}} , что является обычным явлением. Масштабирование γ 2 σ j 2 {\ displaystyle {\ frac {\ gamma ^ {2}} {\ sigma _ {j} ^ {2}}}}{\ displaystyle {\ гидроразрыв {\ gamma ^ {2}} {\ sigma _ {j} ^ {2}}}} также имеет значение, поскольку разброс часто бывает большим.

    Во-вторых, квадратичная форма гессиана потерь относительно активации в направлении градиента может быть ограничена как

    (▽ yj L ^) T ∂ L ^ ∂ yj ∂ yj (▽ yj L ^) ≤ γ 2 σ 2 (∂ L ^ ∂ yj) T (∂ L ∂ yj ∂ yj) (∂ L ^ ∂ yj) - γ m σ 2 ⟨▽ yj L, yj ^⟩ | | ∂ L ^ ∂ y j | | 2 {\ displaystyle (\ triangledown _ {y_ {j}} {\ hat {L}}) ^ {T} {\ frac {\ partial {\ hat {L}}} {\ partial y_ {j} \ partial y_ {j}}} (\ triangledown _ {y_ {j}} {\ hat {L}}) \ leq {\ frac {\ gamma ^ {2}} {\ sigma ^ {2}}} {\ bigg (} {\ frac {\ partial {\ hat {L}}} {\ partial y_ {j}}} {\ bigg)} ^ {T} {\ bigg (} {\ frac {\ partial L} {\ partial y_ { j} \ partial y_ {j}}} {\ bigg)} {\ bigg (} {\ frac {\ partial {\ hat {L}}} {\ partial y_ {j}}} {\ bigg)} - { \ frac {\ gamma} {m \ sigma ^ {2}}} \ langle \ triangledown _ {y_ {j}} L, {\ hat {y_ {j}}} \ rangle {\ bigg |} {\ bigg | } {\ frac {\ partial {\ hat {L}}} {\ partial y_ {j}}} {\ bigg |} {\ bigg |} ^ {2}}{\ displaystyle (\ triangledown _ {y_ {j}} {\ hat {L}}) ^ {T} {\ frac {\ partial {\ шляпа {L}}} {\ partial y_ {j} \ partial y_ {j}}} (\ triangledown _ {y_ {j}} {\ hat {L}}) \ leq {\ frac {\ gamma ^ {2}} {\ sigma ^ {2}}} {\ bigg (} {\ frac {\ partial {\ hat {L}}} {\ partial y_ {j}}} {\ bigg)} ^ {T} {\ bigg (} {\ frac {\ partial L} {\ partial y_ {j} \ partial y_ {j}}} {\ bigg)} {\ bigg (} {\ frac {\ partial {\ шляпа {L}}} {\ partial y_ {j}}} {\ bigg)} - {\ frac {\ gamma} {m \ sigma ^ {2}}} \ langle \ triangledown _ {y_ {j}} L, {\ hat {y_ {j}}} \ rangle {\ bigg |} {\ bigg |} {\ frac {\ partial {\ hat {L}}} {\ partial y_ {j}}} {\ bigg | } {\ bigg |} ^ {2}} .

    Масштабирование γ 2 σ j 2 {\ displaystyle {\ frac {\ gamma ^ {2}} {\ sigma _ {j} ^ {2}}}}{\ displaystyle {\ гидроразрыв {\ gamma ^ {2}} {\ sigma _ {j} ^ {2}}}} указывает, что гессиан потери устойчив к дисперсии мини-партии, тогда как второй член в правой части предполагает, что он становится более гладким, когда гессиан и внутреннее произведение неотрицательны. Если потеря локально выпуклая, то гессиан будет положительно полуопределенным, а внутреннее произведение положительно, если gj ^ {\ displaystyle {\ hat {g_ {j }}}}{\ displaystyle {\ hat {g_ {j}}}} находится в направлении минимума потерь. Таким образом, из этого неравенства можно сделать вывод, что градиент обычно становится более предсказуемым с помощью слоя пакетной нормализации.

    Затем следует перевести границы, связанные с потерями по отношению к нормализованной активации, в границу потерь по весам сети:

    gj ^ ≤ γ 2 σ j 2 (gj 2 - м μ gj 2 - λ 2 ⟨▽ yj L, y ^ j⟩ 2) {\ displaystyle {\ hat {g_ {j}}} \ leq {\ frac {\ gamma ^ {2}} {\ sigma _ { j} ^ {2}}} (g_ {j} ^ {2} -m \ mu _ {g_ {j}} ^ {2} - \ lambda ^ {2} \ langle \ triangledown _ {y_ {j}} L, {\ hat {y}} _ {j} \ rangle ^ {2})}{\ displaystyle {\ hat {g_ {j}}} \ leq {\ frac {\ gamma ^ {2}} {\ сигма _ {j} ^ {2}}} (g_ {j} ^ {2} -m \ mu _ {g_ {j}} ^ {2} - \ lambda ^ {2} \ langle \ triangledown _ {y_ {j}} L, {\ hat {y}} _ {j} \ rangle ^ {2})} , где gj = max | | X | | ≤ λ | | ▽ W L | | 2 {\ displaystyle g_ {j} = max_ {|| X || \ leq \ lambda} || \ triangledown _ {W} L || ^ {2}}{\ displaystyle g_ {j} = max_ {|| X || \ leq \ lambda} || \ triangledown _ {W} L || ^ {2}} и g ^ j = макс | | X | | ≤ λ | | ▽ W L ^ | | 2 {\ displaystyle {\ hat {g}} _ {j} = max_ {|| X || \ leq \ lambda} || \ triangledown _ {W} {\ hat {L}} || ^ {2}}{\ displaystyle {\ hat {g}} _ {j} = max_ {|| X || \ leq \ lambda} || \ triangledown _ {W} {\ hat {L}} || ^ {2}} .

    В дополнение к более плавному ландшафту дополнительно показано, что пакетная нормализация может привести к лучшей инициализации при следующем неравенстве:

    | | W 0 - W ^ ∗ | | 2 ≤ | | W 0 - W ∗ | | 2 - 1 | | W ∗ | | 2 (| | W ∗ | | 2 - ⟨W ∗, W 0⟩) 2 {\ displaystyle || W_ {0} - {\ hat {W}} ^ {*} || ^ {2} \ leq || W_ {0} -W ^ {*} || ^ {2} - {\ frac {1} {|| W ^ {*} || ^ {2}}} (|| W ^ {*} || ^ {2} - \ langle W ^ {*}, W_ {0} \ rangle) ^ {2}}{\ displaystyle || W_ {0} - {\ hat {W}} ^ {*} || ^ {2} \ leq || W_ {0} -W ^ {*} || ^ {2} - {\ frac {1} {|| W ^ {*} || ^ {2}}} (|| W ^ {*} || ^ {2} - \ langle W ^ {*}, W_ {0} \ rangle) ^ {2}} , где W ∗ ​​{\ displaystyle W ^ {*}}{\ displaystyle W ^ {*}} и W ^ ∗ {\ displaystyle {\ hat {W}} ^ {*}}{\ displaystyle {\ hat {W}} ^ {*}} - локальные оптимальные веса для двух сетей соответственно.

    Некоторые ученые утверждают, что приведенный выше анализ не может полностью охватить производительность пакетной нормализации, потому что доказательство касается только самого большого собственного значения или, что эквивалентно, одного направления ландшафта во всех точках. Предполагается, что для проведения окончательного анализа необходимо принять во внимание полный собственный спектр.

    Контринтуитивная грубость оптимизационного ландшафта при инициализации

    Даже несмотря на то, что батчнорм был первоначально введен для смягчения последствий проблемы исчезновения градиента или взрыва, глубокая сеть батчнорма фактически страдает от взрыва градиента во время инициализации, независимо от того, что она использует для нелинейности. Таким образом, оптимизация для случайно инициализированной глубокой сети батчнорма очень далека от гладкости. Точнее, если сеть имеет слои L {\ displaystyle L}L , тогда градиент весов первого слоя имеет норму >c λ L {\ displaystyle>c \ lambda ^ { L}}{\displaystyle>c \ lambda ^ {L}} для некоторых λ>1, c>0 {\ displaystyle \ lambda>1, c>0}{\displaystyle \lambda>1, c>0}в зависимости только от нелинейности. Для любой фиксированной нелинейности λ {\ displaystyle \ lambda}\ lambda уменьшается по мере увеличения размера пакета. Например, для ReLU λ {\ displaystyle \ lambda}\ lambda уменьшается до π / (π - 1) ≈ 1,467 {\ displaystyle \ pi / (\ pi -1) \ приблизительно 1.467}{\ displaystyle \ пи / (\ пи -1) \ приблизительно 1,467} , поскольку размер пакета стремится к бесконечности. Фактически, это означает, что глубокие батчервячные сети необучаемы. Это облегчается только пропуском соединений в стиле остаточных сетей.

    Этот взрыв градиента на поверхности противоречит свойству гладкости, описанному в предыдущем разделе, но на самом деле они согласованы. В предыдущем разделе изучается эффект вставки одного батчнорма в сеть, в то время как градиентный взрыв зависит от наложения батчнорма, типичного для современных глубоких нейронных сетей.

    Разделение длины-направления

    Утверждается, что успех пакетной нормализации может быть, по крайней мере, частично связан с эффектом разъединения в направлении длины, который обеспечивает этот метод.

    Интерпретируя процедуру пакетной нормализации как повторную параметризацию весового пространства, можно показать, что длина и направление весов разделены после процедуры, и, таким образом, их можно обучать отдельно. Для конкретного модуля нейронной сети с входом x {\ displaystyle x}{\ displaystyle x} и вектором весов w {\ displaystyle w}{\ displaystyle w} обозначьте его выход как f (вес) знак равно E x [ϕ (x T w)] {\ displaystyle f (w) = E_ {x} [\ phi (x ^ {T} w)]}{\ displaystyle f (w) = E_ {x} [\ phi (x ^ {T} w)]} , где ϕ {\ displaystyle \ phi}{\ displaystyle \ phi} - функция активации и обозначает S = E [xx T] {\ displaystyle S = E [xx ^ {T}]}{\ displaystyle S = E [xx ^ {T}]} . Предположим, что E [x] = 0 {\ displaystyle E [x] = 0}{\ displaystyle E [x] = 0} , и что спектр матрицы S {\ displaystyle S}{\ displaystyle S} ограничен как 0 < μ = λ m i n ( S) {\displaystyle 0<\mu =\lambda _{min}(S)}{\ displaystyle 0 <\ mu = \ lambda _ {мин} (S)} , L = λ max (S) < ∞ {\displaystyle L=\lambda _{max}(S)<\infty }{\ displaystyle L = \ lambda _ {max} (S) <\ infty} , так что S {\ displaystyle S}{\ displaystyle S} является симметричным положительно определенным. Таким образом, добавление пакетной нормализации к этому модулю приводит к

    f BN (w, γ, β) = E x [ϕ (BN (x T w))] = E x [ϕ (γ (x T w - E x [ Икс T вес] varx [x T w] 1/2) + β)] {\ displaystyle f_ {BN} (w, \ gamma, \ beta) = E_ {x} [\ phi (BN (x ^ {T} w))] = E_ {x} {\ bigg [} \ phi {\ bigg (} \ gamma ({\ frac {x ^ {T} w-E_ {x} [x ^ {T} w]} {var_ {x} [x ^ {T} w] ^ {1/2}}}) + \ beta {\ bigg)} {\ bigg]}}{\ displaystyle f_ {BN} (w, \ gamma, \ beta) = E_ {x} [\ phi (BN (x ^ {T} w))] = E_ {x} {\ bigg [} \ phi {\ bigg (} \ gamma ({\ frac {x ^ {T} w-E_ {x} [x ^ {T} w]} {var_ {x} [x ^ {T} w] ^ {1/2 }}}) + \ beta {\ bigg)} {\ bigg]}} , по определению.

    Термин дисперсии можно упростить так, чтобы varx [x T w] = w TS w {\ displaystyle var_ {x} [x ^ {T} w] = w ^ {T} Sw}{\ displaystyle va r_ {x} [x ^ {T} ш] = w ^ {T} Sw} . Предположим, что x {\ displaystyle x}{\ displaystyle x} имеет нулевое среднее и β {\ displaystyle \ beta}{\ displaystyle \ beta} может быть опущено, тогда следует, что

    f BN (вес, γ) знак равно Е Икс [ϕ (γ Икс T вес (вес TS ш) 1/2)] {\ Displaystyle F_ {BN} (ш, \ гамма) = E_ {x} {\ bigg [} \ phi {\ bigg (} \ gamma {\ frac {x ^ {T} w} {(w ^ {T} Sw) ^ {1/2}}} {\ bigg)} {\ bigg]}}{\ displaystyle f_ { BN} (w, \ gamma) = E_ {x} {\ bigg [} \ phi {\ bigg (} \ gamma {\ frac {x ^ {T} w} {(w ^ {T} Sw) ^ {1 / 2}}} {\ bigg)} {\ bigg]}} , где (w TS w) 1 2 {\ displaystyle (w ^ {T} Sw) ^ {\ frac {1} {2}}}{\ displaystyle (w ^ {T} Sw) ^ {\ frac {1} {2}}} - индуцированная норма S {\ displaystyle S}{\ displaystyle S} , | | w | | s {\ displaystyle || w || _ {s}}{\ displaystyle || w || _ {s}} .

    Следовательно, можно сделать вывод, что f BN (w, γ) = E x [ϕ (x T w ~)] {\ displaystyle f_ {BN} (w, \ gamma) = E_ {x} [\ phi (x ^ {T} {\ tilde {w}})]}{\ displaystyle f_ {BN} (w, \ gamma) = E_ {x} [\ phi (x ^ {T} {\ tilde {w}})]} , где w ~ = γ w | | w | | s {\ displaystyle {\ tilde {w}} = \ gamma {\ frac {w} {|| w || _ {s}}}}{\ displaystyle {\ tilde {w}} = \ гамма {\ frac {w} {|| w || _ {s}}}} и γ {\ displaystyle \ gamma }{\ displaystyle \ gamma} и w {\ displaystyle w}{\ displaystyle w} учитывают его длину и направление отдельно. Это свойство затем можно было бы использовать для доказательства более быстрой сходимости проблем с пакетной нормализацией.

    Линейная сходимость задачи наименьших квадратов с пакетной нормализацией

    С помощью интерпретации повторной параметризации затем можно было бы доказать, что применение пакетной нормализации к обычной задаче наименьших квадратов обеспечивает линейную скорость сходимости в градиенте спуск, который быстрее, чем обычный градиентный спуск, только с сублинейной сходимостью.

    Обозначим цель минимизации обычной задачи наименьших квадратов как

    minw ~ ∈ R df OLS (w ~) = minw ~ ∈ R d (E x, y [(y - x T w ~) 2]) = minw ~ ∈ R d (2 u T w ~ + w ~ TS w ~) {\ displaystyle min _ {{\ tilde {w}} \ in R ^ {d}} f_ {OLS} ({\ tilde {w}}) = min _ {{\ tilde {w}} \ in R ^ {d}} (E_ {x, y} [(yx ^ {T} {\ tilde {w}}) ^ {2}]) = min _ {{\ tilde {w}} \ in R ^ {d}} (2u ^ {T} {\ tilde {w}} + {\ tilde {w}} ^ {T} S {\ tilde {w }})}{\ displaystyle min _ {{\ tilde {w}} \ in R ^ {d}} f_ {OLS} ({\ tilde {w}}) = min _ {{\ tilde {w}} \ in R ^ {d}} (E_ {x, y} [(yx ^ {T} {\ tilde {w}}) ^ {2}]) = min _ {{\ tilde {w}} \ in R ^ {d}} (2u ^ {T} {\ tilde {w}} + {\ tilde {w}} ^ {T} S {\ тильда {w}})} , где u = E [- yx] {\ displaystyle u = E [-yx]}{\ displaystyle u = E [-yx]} .

    Поскольку w ~ = γ w | | w | | s {\ displaystyle {\ tilde {w}} = \ gamma {\ frac {w} {|| w || _ {s}}}}{\ displaystyle {\ tilde {w}} = \ гамма {\ frac {w} {|| w || _ {s}}}} , таким образом, цель становится

    minw ∈ R d ∖ {0}, γ ∈ R f OLS (w, γ) = minw ∈ R d ∖ {0}, γ ∈ R (2 γ u T w | | w | | S + γ 2) {\ displaystyle min_ { w \ in R ^ {d} \ backslash \ {0 \}, \ gamma \ in R} f_ {OLS} (w, \ gamma) = min_ {w \ in R ^ {d} \ backslash \ {0 \}, \ gamma \ in R} {\ bigg (} 2 \ gamma {\ frac {u ^ {T} w} {|| w || _ {S} + \ gamma ^ {2}}} {\ bigg)} }{\ displaystyle min_ {w \ in R ^ {d} \ backslash \ {0 \}, \ gamma \ in R} f_ {OL S} (w, \ gamma) = min_ {w \ в R ^ {d} \ backslash \ {0 \}, \ gamma \ in R} {\ bigg (} 2 \ gamma {\ frac {u ^ {T}) w} {|| w || _ {S} + \ gamma ^ {2}}} {\ bigg)}} , где 0 исключен, чтобы избежать 0 в знаменателе.

    Поскольку цель является выпуклой по отношению к γ {\ displaystyle \ gamma}{\ displaystyle \ gamma} , ее оптимальное значение можно вычислить, установив частную производную цели против γ. {\ displaystyle \ gamma}{\ displaystyle \ gamma} до 0. Цель может быть дополнительно упрощена до

    minw ∈ R d ∖ {0} ρ (w) = minw ∈ R d ∖ {0} (- w T uu T ww TS w) {\ displaystyle min_ {w \ in R ^ {d} \ backslash \ {0 \}} \ rho (w) = min_ {w \ in R ^ {d} \ backslash \ {0 \ }} {\ bigg (} - {\ frac {w ^ {T} uu ^ {T} w} {w ^ {T} Sw}} {\ bigg)}}{\ displaystyle min_ {w \ in R ^ {d} \ backslash \ {0 \}} \ rho ( w) = min_ {w \ in R ^ {d} \ backslash \ {0 \}} {\ bigg (} - {\ frac {w ^ {T} uu ^ {T} w} {w ^ {T} Sw }} {\ bigg)}} .

    Обратите внимание, что эта цель является формой обобщенный фактор Рэлея

    ρ ~ (w) = w TB ww TA w {\ displaystyle {\ tilde {\ rho}} (w) = {\ frac {w ^ {T} Bw} {w ^ {T} Aw}}}{\ displaystyle {\ tilde {\ rho}} (w) = {\ frac {w ^ {T} Bw} {w ^ {T} Aw}}} , где B ∈ R d × d {\ displaystyle B \ in R ^ {d \ times d}}{\ displaystyle B \ in R ^ {d \ times d}} - симметричная матрица, а A ∈ R d × d {\ displaystyle A \ in R ^ {d \ times d}}{\ displaystyle A \ in R ^ {d \ times d}} - симметричная положительно определенная матрица.

    Доказано, что скорость сходимости градиентного спуска обобщенного коэффициента Рэлея равна

    λ 1 - ρ (wt + 1) ρ (wt + 1 - λ 2) ≤ ( 1 - λ 1 - λ 2 λ 1 - λ мин) 2 T λ 1 - ρ (вес) ρ (вес) - λ 2 {\ displaystyle {\ frac {\ lambda _ {1} - \ rho (w_ {t + 1})} {\ rho (w_ {t + 1} - \ lambda _ {2})}} \ leq {\ bigg (} 1 - {\ frac {\ lambda _ {1} - \ lambda _ {2} } {\ lambda _ {1} - \ lambda _ {min}}} {\ bigg)} ^ {2t} {\ frac {\ lambda _ {1} - \ rho (w_ {t})} {\ rho ( w_ {t}) - \ lambda _ {2}}}}{\ displaystyle {\ frac {\ lambda _ {1} - \ rho (w_ {t + 1})} {\ rho (w_ {t + 1} - \ lambda _ {2})}} \ leq { \ bigg (} 1 - {\ frac {\ lambda _ {1} - \ lambda _ {2}} {\ lambda _ {1} - \ lambda _ {min}}} {\ bigg)} ^ {2t} { \ frac {\ lambda _ {1} - \ rho (w_ {t})} {\ rh о (w_ {t}) - \ lambda _ {2}}}} , где λ 1 {\ displaystyle \ lambda _ {1}}{\ displaystyle \ lambda _ {1}} - наибольшее значение собственное значение из B {\ displaystyle B}{\ displaystyle B} , λ 2 {\ displaystyle \ lambda _ {2}}{\ displaystyle \ lambda _ {2}} - второе по величине собственное значение B {\ displaystyle B}{\ displaystyle B} , а λ min {\ displaystyle \ lambda _ {min}}{\ displaystyle \ lambda _ {min}} - наименьшее собственное значение B {\ displaystyle B}{\ displaystyle B} .

    В нашем случае B = uu T {\ displaystyle B = uu ^ {T}}{\ displaystyle B = uu ^ {T}} - матрица первого ранга, и результат сходимости можно соответственно упростить. В частности, рассмотрим шаги градиентного спуска в форме wt + 1 = wt - η t ▽ ρ (wt) {\ displaystyle w_ {t + 1} = w_ {t} - \ eta _ {t} \ triangledown \ rho (w_ {t})}{\ displaystyle w_ {t + 1} = w_ {t} - \ eta _ {t} \ triangledown \ rho (w_ {t})} с размером шага η t = wt TS wt 2 L | ρ (вес т) | {\ displaystyle \ eta _ {t} = {\ frac {w_ {t} ^ {T} Sw_ {t}} {2L | \ rho (w_ {t}) |}}}{\ displaystyle \ eta _ {t} = {\ frac {w_ {t} ^ {T} Sw_ {t}} {2L | \ rho (w_ {t}) | }}} , и начиная с ρ (w 0) ≠ 0 {\ displaystyle \ rho (w_ {0}) \ neq 0}{\ displaystyle \ rho (w_ {0}) \ neq 0} , затем

    ρ (wt) - ρ (w ∗) ≤ ( 1 - μ L) 2 T (ρ (вес 0) - ρ (w ∗)) {\ displaystyle \ rho (w_ {t}) - \ rho (w ^ {*}) \ leq {\ bigg (} 1- {\ frac {\ mu} {L}} {\ bigg)} ^ {2t} (\ rho (w_ {0}) - \ rho (w ^ {*}))}{\ displaystyle \ rho (w_ {t}) - \ rho (w ^ {*}) \ leq {\ bigg (} 1 - {\ гидроразрыв {\ mu} {L}} {\ bigg)} ^ {2t} (\ rho (w_ {0}) - \ rho (w ^ {*}))} .

    Линейная сходимость обучающего полупространства Проблема с пакетной нормализацией

    Проблема обучения полупространств относится к обучению персептрона, который является простейшей формой нейронной сети. Задача оптимизации в этом случае:

    minw ~ ∈ R df LH (w ~) = E y, x [ϕ (z T w ~)] {\ displaystyle min _ {{\ tilde {w}} \ in R ^ {d}} f_ {LH} ({\ tilde {w}}) = E_ {y, x} [\ phi (z ^ {T} {\ tilde {w}})]}{\ displaystyle min _ {{\ tilde {w}} \ в R ^ {d}} f_ {LH} ({\ tilde {w}}) = E_ {y, x} [\ phi (z ^ {T} {\ тильда {w}})]} , где z = - yx {\ displaystyle z = -yx}{\ displaystyle z = -yx} и ϕ {\ displaystyle \ phi}{\ displaystyle \ phi} - произвольная функция потерь.

    Suppose that ϕ {\displaystyle \phi }{\ displaystyle \ phi} is infinitely differentiable and has a bounded derivative. Assume that the objective function f L H {\displaystyle f_{LH}}{\ displaystyle f_ {LH}} is ζ {\displaystyle \zeta }{\ displaystyle \ zeta} -smooth, and that a solution α ∗ = a r g m i n α | | ▽ f ( α w) | | 2 {\displaystyle \alpha ^{*}=argmin_{\alpha }||\triangledown f(\alpha w)||^{2}}{\ displaystyle \ alpha ^ {*} = argmin _ { \ alpha} || \ triangledown f (\ alpha w) | | ^ {2}} exists and is bounded such that − ∞ < α ∗ < ∞ {\displaystyle -\infty <\alpha ^{*}<\infty }{\ displaystyle - \ infty <\ alpha ^ {*} <\ infty} . Also assume z {\displaystyle z}{\ displaystyle z} is a multivariate normal random variable. With the Gaussian assumption, it can be shown that all critical points lie on the same line, for any choice of loss function ϕ {\displaystyle \phi }{\ displaystyle \ phi} . Specifically, the gradient of f L H {\displaystyle f_{LH}}{\ displaystyle f_ {LH}} could be represented as

    ▽ w ~ f L H ( w ~) = c 1 ( w ~) u + c 2 ( w ~) S w ~ {\displaystyle \triangledown _{\tilde {w}}f_{LH}({\tilde {w}})=c_{1}({\tilde {w}})u+c_{2}({\tilde {w}})S{\tilde {w}}}{\ displaystyle \ triangledown _ {\ tilde {w}} f_ {LH} ({\ tilde {w}}) = c_ {1} ({\ tilde {w}}) u + c_ {2} ({\ tilde {w}}) S {\ тильда {w}}} , where c 1 ( w ~) = E z [ ϕ ( 1) ( z T w ~) ] − E z [ ϕ ( 2) ( z T w ~) ] ( u T w ~) {\displaystyle c_{1}({\tilde {w}})=E_{z}[\phi ^{(1)}(z^{T}{\tilde {w}})]-E_{z}[\phi ^{(2)}(z^{T}{\tilde {w}})](u^{T}{\tilde {w}})}{\ displaystyle c_ {1} ({\ tilde {w}}) = E_ { z} [\ phi ^ {(1)} (z ^ {T} {\ тиль де {w}})] - E_ {z} [\ phi ^ {(2)} (z ^ {T} {\ tilde {w}})] (u ^ {T} {\ tilde {w}})} , c 2 ( w ~) = E z [ ϕ ( 2) ( z T w ~) ] {\displaystyle c_{2}({\tilde {w}})=E_{z}[\phi ^{(2)}(z^{T}{\tilde {w}})]}{\ displaystyle c_ {2} ({\ tilde {w}}) = E_ {z} [\ phi ^ {(2)} (z ^ {T} {\ тильда {w}})]} , and ϕ ( i) {\displaystyle \phi ^{(i)}}{\ displaystyle \ phi ^ {(i)}} is the i {\displaystyle i}{\ displaystyle i} -th derivative of ϕ {\displaystyle \phi }{\ displaystyle \ phi} .

    By setting the gradient to 0, it thus follows that the bounded critical points w ~ ∗ {\displaystyle {\tilde {w}}_{*}}{\ displaystyle {\ тильда {w}} _ { *}} can be expressed as w ~ ∗ = g ∗ S − 1 u {\displaystyle {\tilde {w }}_{*}=g_{*}S^{-1}u}{\ displaystyle {\ tilde {w}} _ {*} = g_ {*} S ^ {- 1} u} , where g ∗ {\displaystyle g_{*}}{\ displaystyle g _ {*}} depends on w ~ ∗ {\displaystyle {\tilde {w}}_{*}}{\ displaystyle {\ тильда {w}} _ { *}} and ϕ {\displaystyle \phi }{\ displaystyle \ phi} . Combining this global property with length-direction decoupling, it could thus be proved that this optimization problem converges linearly.

    First, a variation of gradient descent with batch normalization, Gradient Descent in Normalized Paramterization (GDNP), is designed for the objective function m i n w ∈ R d ∖ { 0 }, γ ∈ R f L H ( w, γ) {\displaystyle min_{w\in R^{d}\backslash \{0\},\gamma \in R}f_{LH}(w,\gamma)}{\ displaystyle min_ {w \ in R ^ {d} \ обратная косая черта \ {0 \}, \ gamma \ in R} f_ {LH} (w, \ gamma)} , such that the direction and length of the weights are updated separately. Denote the stopping criterion of GDNP as

    h ( w t, γ t) = E z [ ϕ ′ ( z T w ~ t) ] ( u T w t) − E z [ ϕ ″ ( z T w ~ t) ] ( u T w t) 2 {\displaystyle h(w_{t},\gamma _{t})=E_{z}[\phi '(z^{T}{\tilde {w}}_{t})](u^{T}w_{t})-E_{z}[\phi ''(z^{T}{\tilde {w}}_{t})](u^{T}w_{t})^{2}}{\displaystyle h(w_{t},\gamma _{t})=E_{z}[\phi '(z^{T}{\tilde {w}}_{t})](u^{T}w_{t})-E_{z}[\phi ''(z^{T}{\tilde {w}}_{t})](u^{T}w_{t})^{2}}.

    Let the step size be

    s t = s ( w t, γ t) = − | | w t | | S 3 L g t h ( w t, γ t) {\displaystyle s_{t}=s( w_ {t}, \ gamma _ {t}) = - {\ frac {|| w_ {t} || _ {S} ^ {3}} {Lg_ {t} h (w_ {t}, \ gamma _ {t})}}}{\ displaystyle s_ {t} = s (w_ {t}, \ gamma _ {t}) = - {\ frac {|| w_ {t} || _ {S} ^ {3}} {Lg_ {t} h (w_ {t}, \ gamma _ {t})}}} .

    Для каждого шага, если h (wt, γ t) ≠ 0 {\ displaystyle h (w_ {t}, \ gamma _ {t}) \ neq 0}{\ displaystyle h (w_ {t}, \ gamma _ {t}) \ neq 0 } , затем обновите направление как

    wt + 1 = wt - st ▽ wf (wt, γ t) {\ displaystyle w_ {t + 1} = w_ {t} -s_ {t} \ triangledown _ {w} f (w_ {t}, \ gamma _ {t})}{\ displaystyle w_ {t + 1} = w_ {t} -s_ {t} \ triangledown _ {w} f (w_ {t}, \ gamma _ {t})} .

    Затем обновите длину в соответствии с

    γ t = B isection (T s, f, wt) {\ displaystyle \ gamma _ { t} = Bisection (T_ {s}, f, w_ {t})}{\ displaystyle \ gamma _ {t} = Bisection (T_ {s}, f, w_ {t })} , где B isection () {\ displaystyle Bisection ()}{\ displaystyle Деление пополам ()} - классический алгоритм деления пополам, а T s {\ displaystyle T_ {s}}{\ displaystyle T_ {s}} - общее количество итераций, выполненных на этапе деления пополам.

    Обозначьте общее количество итераций как T d {\ displaystyle T_ {d}}{\ displaystyle T_ {d}} , тогда окончательный результат GDNP будет

    w ~ T d = γ T dw T d | | w T d | | S {\ Displaystyle {\ тильда {w}} _ {T_ {d}} = \ gamma _ {T_ {d}} {\ frac {w_ {T_ {d}}} {|| w_ {T_ {d}} || _ {S}}}}{\ displaystyle {\ tilde {w}} _ {T_ {d}} = \ gamma _ {T_ { d}} {\ frac {w_ {T_ {d}}} {|| w_ {T_ {d}} || _ {S}}}} .

    Таким образом, алгоритм GDNP немного изменяет этап пакетной нормализации для упрощения математического анализа.

    Можно показать, что в GDNP частная производная f LH {\ displaystyle f_ {LH}}{\ displaystyle f_ {LH}} по компоненту длины сходится к нулю с линейной скоростью, например что

    (∂ γ е LH (вес, при (T s)) 2 ≤ 2 - T s ζ | bt (0) - при (0) | μ 2 {\ displaystyle (\ partial _ {\ gamma} f_ {LH} (w_ {t}, a_ {t} ^ {(T_ {s})}) ^ {2} \ leq {\ frac {2 ^ {- T_ {s}} \ zeta | b_ {t} ^ {(0)} - a_ {t} ^ {(0)} |} {\ mu ^ {2}}}}{\ displaystyle (\ partial _ {\ gamma} f_ {LH} (w_ {t}, a_ {t} ^ {(T_ {s})}) ^ {2} \ leq {\ frac {2 ^ {- T_ {s}} \ zeta | b_ {t} ^ {(0)} - a_ {t} ^ {(0)} |} {\ mu ^ {2}}}} , где at (0) {\ displaystyle a_ {t} ^ {(0)}}{\ displaystyle a_ {t} ^ {(0)}} и bt 0 {\ displaystyle b_ {t} ^ {0}}{\ displaystyle b_ {t} ^ {0}} - две начальные точки алгоритма деления пополам слева и справа, соответственно.

    Кроме того, для каждой итерации уровня градиента f LH {\ displaystyle f_ {LH}}{\ displaystyle f_ {LH}} относительно w {\ displaystyle w}{\ displaystyle w} сходится линейно, так что

    | | wt | | S 2 | | ▽ f LH (wt, gt) | | S - 1 2 ≤ (1 - μ L) 2 t Φ 2 γ t 2 (ρ (w 0) - ρ ∗) {\ displaystyle || w_ {t} || _ {S} ^ {2} || \ треугольник вниз f_ {LH} (w_ {t}, g_ {t}) || _ {S ^ { - 1}} ^ {2} \ leq {\ bigg (} 1 - {\ frac {\ mu} {L}} {\ bigg)} ^ {2t} \ Phi ^ {2} \ gamma _ {t} ^ {2} (\ rho (w_ { 0}) - \ rho ^ {*})}{\ displaystyle || w_ {t} || _ {S} ^ {2} || \ triangledown f_ {LH} (w_ {t}, g_ {t}) || _ {S ^ {- 1}} ^ {2} \ leq {\ bigg (} 1 - {\ frac {\ mu} {L}} {\ bigg)} ^ {2t} \ Phi ^ {2} \ gamma _ {t} ^ {2} (\ rho (w_ {0}) - \ rho ^ {*})} .

    Объединение этих двух неравенства, таким образом, может получена граница градиента относительно w ~ T d {\ displaystyle {\ tilde {w}} _ {T_ { d}}}{\ displaystyle {\ tilde {w}} _ {T_ {d}}} :

    | | ▽ w ~ f (w ~ T d) | | 2 ≤ (1 - μ L) 2 T d Φ 2 (ρ (w 0) - ρ ∗) + 2 - T s ζ | b t (0) - a t (0) | μ 2 {\ displaystyle || \ triangledown _ {\ tilde {w}} f ({\ tilde {w}} _ {T_ {d}}) || ^ {2} \ leq {\ bigg (} 1- {\ frac {\ mu} {L}} {\ bigg)} ^ {2T_ {d}} \ Phi ^ {2} (\ rho (w_ {0}) - \ rho ^ {*}) + {\ frac {2 ^ {- T_ {s}} \ zeta | b_ {t} ^ {(0)} - a_ {t} ^ {(0)} |} {\ mu ^ {2}}}}{\ displaystyle || \ triangledown _ {\ tilde {w}} f ({\ tilde {w}} _ {T_ {d}}) || ^ {2} \ leq {\ bigg (} 1 - {\ frac {\ mu} {L}} {\ bigg)} ^ {2T_ {d}} \ Phi ^ {2} (\ rho (w_ {0}) - \ rho ^ {*}) + {\ frac {2 ^ {- T_ {s}} \ zeta | b_ {t} ^ {(0)} - a_ {t} ^ {(0)} |} {\ mu ^ {2}}}} , что гарантирует линейную сходимость алгоритма.

    Хотя доказано, что предположение о гауссовском вводе, в экспериментах также показано, что GDNP может ускорить оптимизацию без ограничения.

    Линейная конвергенция нейронных сетей с пакетной нормализацией

    Рассмотрим многослойный персептрон (MLP) с одним скрытым слоем и m {\ displaystyle m}{\ displaystyle m } скрытые блоки с отображением из входа x ∈ R d {\ displaystyle x \ in R ^ {d}}{\ displaystyle x \ in R ^ {d}} в скалярный вывод, описанный как

    F x (W ~, Θ) Знак равно ∑ я знак равно 1 м θ я ϕ (Икс T вес ~ (я)) {\ Displaystyle F_ {x} ({\ тильда {W}}, \ Theta) = \ сумма _ {я = 1} ^ {м } \ theta _ {i} \ phi (x ^ {T} {\ tilde {w}} ^ {(i)})}{\ displaystyle F_ {x} ({\ tilde {W}}, \ Theta) = \ sum _ {i = 1} ^ {m} \ theta _ {i} \ phi (x ^ {T} {\ tilde {w}} ^ {(я)})} , где w ~ (i) {\ displaystyle { \ tilde {w}} ^ {(i)}}{\ displaystyle {\ тильда {w}} ^ {(i)}} и θ i {\ displaystyle \ theta _ {i}}{\ displaystyle \ theta _ {i}} - вес входа и выхода единицы i {\ displaystyle i}{\ displaystyle i} соответственно, и ϕ {\ displaystyle \ phi}{\ displaystyle \ phi} - функция активации и обязательством, что это tanh-функция.

    , тогда вес входа и выхода могут быть оптимизированы с помощью

    min W ~, Θ (f NN (W ~, Θ) = E y, x [l (- y F x (W ~, Θ))]) {\ displaystyle min _ {{\ тильда {W}}, \ Theta} (f_ {NN} ({\ til de {W}}, \ Theta) = E_ {y, x} [l (-yF_ {x} ({\ tilde {W}}), \ Theta))])}{\ displaystyle min _ {{\ tilde {W}}, \ Theta} (f_ {NN} ({\ tilde {W}}, \ Theta) = E_ {y, x} [l (-yF_ {x} ({\ tilde {W }}, \ Theta))])} , где l {\ displaystyle l}{\ displaystyle l} - функция потерь, W ~ = {w ~ (1),... вес ~ (м)} {\ Displaystyle {\ тильда {W}} = \ {{\ тильда {w}} ^ {(1)},..., {\ тильда {ш}} ^ {(м)} \}}{\ displaystyle {\ tilde {W}} = \ {{\ tilde {w}} ^ {(1)},..., {\ тильда {w}} ^ {(m)} \}} и Θ = {θ (1),..., θ (m)} {\ displaystyle \ Theta = \ {\ theta ^ {(1)},..., \ theta ^ {(m)} \}}{\ displaystyle \ Theta = \ {\ theta ^ {(1)},..., \ theta ^ {(m)} \}} .

    Считайте фиксированным Θ {\ displaystyle \ Theta}{\ displaystyle \ Theta} и оптимизируя только W ~ {\ displaystyle {\ tilde {W}}}{\ displaystyle {\ tilde {W}}} , можно показать, что критические точки f NN (W ~) {\ displaystyle f_ {NN} ({\ tilde {W}})}{\ displaystyle f_ {NN} ({\ tilde {W}})} определенного скрытого объекта i {\ displaystyle i}{\ displaystyle i} , w ^ (i) {\ displaystyle {\ hat { w}} ^ {(i)}}{\ displaystyle {\ hat {w}} ^ {(i)}} , все выравниваются по одной линии в зависимости от входящей информации в скрытый слой, так что

    w ^ (i) = c ^ (я) S - 1 u {\ displaystyle {\ hat {w}} ^ {(i)} = {\ hat {c}} ^ {(i)} S ^ {- 1} u}{\ displaystyle {\ hat {w}} ^ {(i) } = {\ hat {c}} ^ {(i)} S ^ {- 1} u} , где c ^ (i) ∈ R {\ displaystyle {\ hat {c}} ^ {(i)} \ in R}{\ displaystyle {\ hat {c}} ^ {(i)} \ in R} - скаляр, i = 1,..., m {\ displaystyle i = 1,..., m}{\ displaystyle i = 1,..., m} .

    Этот результат можно проверить, установив градиент f NN {\ displaystyle f_ {NN}}{\ displaystyle f_ {NN}} равным нулю и решение уравнений системы.

    Примените алгоритм GDNP к этой задаче оптимизации, поочередно оптимизируя различные скрытые блоки. В частности, для каждого скрытого блока запустите GDNP, чтобы найти оптимальные W {\ displaystyle W}{ \ displaystyle W} и γ {\ displaystyle \ gamma}{\ displaystyle \ gamma} . При таком же выборе критерия остановки и размера шага следует, что

    | | ▽ w ~ (i) f (w ~ t (i)) | | S - 1 2 ≤ (1 - μ L) 2 t C (ρ (w 0) - ρ ∗) + 2 - T s (i) ζ | b t (0) - a t (0) | μ 2 {\ displaystyle || \ triangledown _ {{\ tilde {w}} ^ {(i)}} f ({\ tilde {w}} _ {t} ^ {(i)}) || _ {S ^ {- 1}} ^ {2} \ leq {\ bigg (} 1 - {\ frac {\ mu} {L}} {\ bigg)} ^ {2t} C (\ rho (w_ {0 }) - \ rho ^ {*}) + {\ frac {2 ^ {- T_ {s} ^ {(i)}} \ zeta | b_ {t} ^ {(0)} - a_ {t} ^ {(0)} |} {\ mu ^ {2}}}}{\ displaystyle || \ triangledown _ {{\ tilde {w}} ^ {(i)}} f ({\ tilde {w}} _ {t} ^ {(i)}) || _ {S ^ {- 1}} ^ {2} \ leq {\ bigg (} 1 - {\ frac {\ mu} {L}} {\ bigg)} ^ {2t} C (\ rho (w_ {0 }) - \ rho ^ {*}) + {\ frac {2 ^ {- T_ {s} ^ {(я)}} \ zeta | b_ {t} ^ {(0)} - a_ {t} ^ {(0)} |} {\ mu ^ {2}}}} .

    Временные параметры каждой скрытой единицы сходятся линейно, вся задача оптимизации имеет линейную скорость сходимости.

    Список литературы
    • Иоффе Сергей; Сегеди, Кристиан (2015). «Пакетная нормализация: ускорение глубокого обучения сети за счет уменьшения внутреннего ковариатного сдвига», ICML'15: Материалы 32-й конференции по международной конференции по машинному обучению - Том 37, июль 2015 г. Страницы 448–456
Последняя правка сделана 2021-05-12 14:32:42
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте