Learning rate to za mało. Liczy się ELR
Wykorzystuję treści generowane przez AI jako część mojego codziennego procesu nauki.
Pewnie znasz ten dial: ustawiasz learning rate, dokładasz weight decay, może jakiś scheduler, i liczysz że model się nauczy. Nowa praca z Pekinu i Ant Group mówi, że te pokrętła w dużej mierze kręcą tym samym.
Pomysł
Weź learning rate η i podziel przez wielkość wag (normę Frobeniusa):
To jest efektywny learning rate (ELR). Nie "jaki duży krok ustawiliśmy na papierze", tylko "jaki duży krok jest względem tego, jak grube już są wagi".
Intuicja jest prosta. Jak wagi urosną, ten sam η robi coraz mniejszy ruch w kierunku, który się liczy. ELR mierzy ten rzeczywisty krok.
Poniżej dwa zabawkowe runy na tej samej paraboli. Przycisk ten sam ELR dobija η runu B tak, by η / ‖W‖ było identyczne. Krzywe lossu wtedy siadają na sobie. Przy ten sam LR norma jest inna, ELR się rozjeżdża i krzywe też.
Co zrobili
Wzięli dwa treningi z zupełnie innym LR i zupełnie inną historią norm wag. Potem dopasowali je tak, żeby ELR w każdym kroku był taki sam.
Krzywe lossu prawie się pokryły. Średni błąd rzędu 10⁻³, mniejszy niż różnica między dwoma seedami.
Zrobili to na Llamie, Qwen3-MoE, linear attention, AdamW, Muon, Signum, nawet na ViT na ImageNet. Działa.
Dlaczego to dziwne
W sieciach ze scale invariance (na przykład z BatchNormem) taki stosunek wynika z matematyki: liczy się kierunek wag, nie ich długość. Transformer nie jest taki. Residual plus 42at4⁝ RMSNorm, SwiGLU, embeddingi i head. Jak przeskalujesz wagi, psuje się balans między ścieżkami.
Mimo to ELR i tak rządzi lossem. To prawo empiryczne, nie twierdzenie.
Jeszcze dziwniej: jak wyłączą uczące się gaine w RMSNorm (czyli model staje się bardziej niewrażliwy na skalę), zapaść krzywych pogarsza się. Czyli to nie jest "bo sieć nie czuje skali". Mechanizm jest otwarty.
Weight decay i Hyperball
42at1⁝ Weight decay i 42at2⁝ Hyperball (wagi przyklejone do kuli o zadanym promieniu) wyglądają jak osobne triki. W eksperymencie zostawiasz ten mechanizm, a drugiemu runowi zmieniasz tylko LR, żeby ELR się zgadzał. Loss wraca.
Czyli te metody kształtują loss głównie przez to, jaki ELR produkują. Nie przez magię "mniejszych wag".
Delayed acceleration
Klasyka 42at5⁝ Delayed acceleration: run z weight decay na początku ma gorszy loss, a pod koniec lepszy.
Bez weight decay wagi puchną, więc ELR spada szybciej niż sam LR. Weight decay hamuje ten wzrost i ELR zostaje większy dłużej. Model zbiera więcej "efektywnego czasu treningu" wcześnie, ale też więcej szumu. Szum widać od razu. Zysk widać dopiero, gdy LR schodzi i szum się zapomina.
Zysk zbierasz wcześnie. Odczytujesz go późno.
Po co ci to
Nie musisz osobno zgadywać LR, weight decay i targetu normy. Najpierw zaplanuj krzywą ELR. Dopiero potem wybierz, czym ją zrealizować: schedulerem, decayem, Hyperballem.
Pojęcia
- 42at1⁝ Weight decay
- 42at2⁝ Hyperball
- 42at3⁝ Scale invariance
- 42at4⁝ RMSNorm
- 42at5⁝ Delayed acceleration
- 42at6⁝ Norma Frobeniusa
src: https://arxiv.org/abs/2608.24814 Effective Learning Rate Governs Loss Dynamics in Language Model Pretraining (Liu, Zheng, Zhang, Wu et al.)
42 AI
42ah⁝ Czy możemy zbudować teorię fizyki procesu uczenia, która przewiduje makroskopowe zachowania sieci?
42ah9⁝ Learning Rate - Batch Size Scaling Rules