Тихий убийца Трансформеров: как Weight Decay уничтожает эмбеддинги и нормализацию
YH7H22 7 минут назад Тихий убийца Трансформеров: как Weight Decay уничтожает эмбеддинги и нормализацию Средний 4 мин 177 Машинное обучение * У каждого из нас есть "мышечная память" при написании кода обучения...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. YH7H22 7 минут назад Тихий убийца Трансформеров: как Weight Decay уничтожает эмбеддинги и нормализацию Средний 4 мин 177 Машинное обучение * У каждого из нас есть "мышечная память" при написании кода обучения нейросетей. Мы собираем архитектуру, а затем пишем примерно такую строчку, даже не задумываясь: optimizer = torch. parameters(), lr=1e-4, weight_decay=0.
1)Weight Decay (L2-регуляризация) это база. Мы знаем, что он тянет веса к нулю, не дает отдельным нейронам "зазвездиться" и предотвращает переобучение. Для линейных слоев (W * X) это работает великолепно.
Технические детали
Но Трансформер состоит не только из матриц W. В нем есть специфические слои, для которых Weight Decay это не лекарство от переобучения, а тихий убийца, который медленно разрушает геометрию латентного пространства и душит градиенты. Давайте залезем под капот оптимизатора и посмотрим, как слепое применение Weight Decay уничтожает ваши эмбеддинги и слои нормализации.
Физика Weight DecayЧтобы понять проблему, нужно вспомнить математику AdamW. В отличие от градиента, который обновляет вес только если есть ошибка, Weight Decay применяется безусловно на каждом шаге оптимизатора:Wnew=Wold−η⋅∇L−η⋅λ⋅Wold Где λ это наш weight_decay. Физически это гравитация.
На каждом шаге (на каждом батче) оптимизатор "откусывает" от каждого веса микроскопический процент его значения, независимо от того, что говорят данные. А теперь посмотрим, что эта гравитация делает с разными частями сети. Жертва №1: Эмбеддинги (Черная дыра для редких токенов)Слой эмбеддингов (nn.
Отраслевые последствия
Embedding) это огромная lookup-таблица (Словарь * Размерность). Главное отличие эмбеддингов от линейных слоев разреженность обновлений. Когда вы прогоняете батч текста, в нем участвуют, скажем, 2000 уникальных токенов.
Градиент (∇L) вычисляется только для этих 2000 токенов. Для остальных 48 000 слов из вашего словаря градиент равен нулю. Но оптимизатору AdamW всё равно!
Вы передали ему model. parameters(), и он применяет правило Weight Decay ко всей матрице эмбеддингов. Что происходит в реальности:Представьте редкое слово, например, "Утконос".
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





