Avançado

Learning-rate schedules e warmup

O schedule controla a escala de updates; warmup protege estatísticas iniciais instáveis e decay refina o aprendizado posterior.

Atualizada em

1

Conceito

O optimizer transforma gradientes em updates, mas o learning rate decide a escala. Uma taxa constante raramente serve a toda run. No começo, ativações e moments não estão calibrados; no meio, progresso substancial ajuda; no fim, updates menores refinam. Um schedule codifica esse risco variável.

Warmup começa abaixo do pico e cresce por um intervalo. Warmup linear pode usar

ηt=ηmaxtTwarmup\eta_t=\eta_{max}\frac{t}{T_{warmup}}

para tTwarmupt\le T_{warmup}. Os primeiros updates ficam contidos enquanto escalas de normalização, gradientes e moments do Adam se estabilizam. Warmup não conserta um pico excessivo; só muda como ele é alcançado.

Depois, linear decay reduz a taxa num ritmo constante até o endpoint. É simples e deixa o progresso restante claro. Cosine decay segue meio cosseno, caindo suavemente perto do início e fim. Inverse-square-root cai proporcionalmente a t1/2t^{-1/2} após a construção de warmup e apareceu na receita original do Transformer. Constant-with-warmup mantém o pico, útil quando o horizonte é incerto, mas pode deixar updates finais ruidosos.

O endpoint importa. Decair exatamente a zero supõe que a run acaba no horizonte; estendê-la não aprende sem mudar o schedule. Um mínimo não zero preserva adaptação, mas pode perturbar um modelo quase convergido. Restarts elevam a taxa de propósito e não são automaticamente adequados a pretraining caro.

Defina progresso na unidade correta. “1.000 steps de warmup” muda quando o global batch passa de um para quatro milhões de tokens. Schedules por token se alinham à exposição e sobrevivem a mudanças de topologia. Se há padding, conte tokens efetivos de loss quando a diferença importa.

AdamW separa otimização baseada em gradientes do weight decay, mas schedule e decay interagem. Norms e biases costumam ficar fora do weight decay. Gradient clipping limita update causado por gradiente grande antes do step; é guardrail, não substituto de schedule estável.

Escalar global batch pode motivar ajuste da rate, mas regras linear ou square-root são heurísticas. Batches grandes reduzem ruído e podem exigir warmup maior ou tuning diferente. Use pilot sweeps, não extrapole ordens de grandeza.

Registre a rate realizada por step junto com tokens, loss, gradient norm, optimizer stats e updates pulados. Ao retomar, restaure posição do scheduler. Reiniciar warmup acidentalmente ou pular para uma rate final errada muda a trajetória.

Pilotos devem variar uma região pequena de peak rates e warmup enquanto mantêm dados, batch e inicialização comparáveis. A melhor curva não é simplesmente aquela com menor training loss cedo: ela precisa permanecer estável, alcançar boa validation loss no budget e não depender de clipping contínuo. Se quase todo step encosta no limite de gradient norm, o clip está mascarando uma receita agressiva em vez de apenas conter eventos raros.

Um plotter deve mostrar warmup, pico, decay, floor e horizonte, com valores em steps e tokens. Sobrepor loss ajuda a correlacionar instabilidade, mas correlação não prova causa.

O modelo durável é movimento controlado. Warmup evita sacudir uma rede não calibrada, a fase central avança rapidamente e decay estreita o passo perto do fim. Schedule integra a especificação do experimento e o checkpoint, não é decoração.

2

Como explicar para uma criança de cinco anos

Um trem de carga não sai de uma estação cheia com potência máxima. Ele ganha velocidade enquanto engates tensionam, cruza quando a rota está livre e freia gradualmente perto da plataforma. Warmup protege a otimização inicial, o schedule principal carrega progresso e decay reduz updates perturbadores no fim. O horário precisa usar a mesma unidade da viagem.

3

Ensine de volta

Explique por que warmup ajuda Transformers e compare schedules cosine, linear e inverse-square-root.

Mínimo: 80 caracteres e 15 palavras. Seu texto fica somente neste navegador.

Salvo somente neste dispositivo.

Ver uma resposta-modelo

No início, moments do optimizer, escalas de ativação e gradientes são mal estimados, então aplicar o pico pode desestabilizar. Warmup aumenta a rate por steps ou tokens iniciais. Linear decay cai a uma taxa constante, cosine cai suavemente com cauda plana, e inverse-square-root cai proporcionalmente ao inverso da raiz após warmup. Endpoints e unidades precisam casar com o token budget.

4

Teste seu entendimento

1. O que warmup muda diretamente?
Resposta e explicação

O learning rate nos primeiros updates — Warmup aumenta gradualmente a escala em vez de aplicar o pico no primeiro step.

2. Por que definir schedule em tokens quando batch pode mudar?
Resposta e explicação

Um step pode representar quantidades diferentes de dados — Progresso por tokens fica alinhado à exposição aos dados sob mudanças de global batch.

Conclua o teach-back e acerte o quiz para finalizar a aula.

Fontes

  1. Ashish Vaswani et al. (2017). Attention Is All You Need.
  2. Ilya Loshchilov e Frank Hutter (2019). Decoupled Weight Decay Regularization.