Выбор ответа Senior Инициализация и нормализация обновлено

Pre-LN и Post-LN

Вопрос

Чем Pre-LN трансформер (x + F(LN(x))) отличается от исходного Post-LN (LN(x + F(x))) при обучении глубоких моделей?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Pre-LN стабильнее: тождественная ветка не идёт через нормализацию, warmup менее важен. В Post-LN каждая residual-сумма проходит через LayerNorm, и у глубоких моделей градиенты у выходных слоёв на старте большие, без аккуратного warmup обучение расходится.

Варианты ответа

  1. Post-LN стабильнее и не требует warmup, а Pre-LN выбирают только ради скорости инференса
  2. Они математически эквивалентны, отличается только место в коде
  3. Pre-LN стабильнее: тождественная ветка не идёт через нормализацию, warmup менее важенправильный ответ
  4. Pre-LN не использует residual-связи, поэтому градиент проходит только через LN

Разбор

В Post-LN каждая residual-сумма проходит через LayerNorm, и у глубоких моделей градиенты у выходных слоёв на старте большие, без аккуратного warmup обучение расходится. В Pre-LN residual-поток чистый, поэтому большинство современных LLM используют pre-norm (часто с RMSNorm). Цена: в Pre-LN нужна финальная нормализация перед выходом, а представления глубоких слоёв могут расти по норме.

  • Как раз Post-LN капризнее.
  • Порядок операций разный, результаты разные.
  • Residual в Pre-LN есть.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме