자주 하는 실수와 요약
자주 하는 실수
| 실수 | 나온 문제 | 바로잡는 법 |
|---|---|---|
| 가장 많이 기여한 쪽에 몰아주는 것이 늘 최선이라고 봄 | 1 | 최선은 규칙(노름)이 정한다. 칸마다 상한이면 모두 상한까지, 제곱합이면 비례, 합이면 몰아주기 |
| 1차 어림으로 가장 가파른 스텝이면 손실의 바닥에도 가장 빨리 닿는다고 봄 | 2 | 부호 하강은 스텝 크기가 그래디언트와 상관없어 손실의 바닥 둘레를 오간다. 학습률을 줄여 가야 한다 |
| Adam 의 스텝은 늘 칸마다 크기가 다르다고 봄 | 3 | 편향 보정 때문에 첫 스텝은 ε 보다 큰 칸에서 부호 하강이다. 이동 평균이 켜지면 부호가 오락가락하는 칸의 스텝이 준다 |
| 행렬 그래디언트도 −G/‖G‖₂ 가 가장 가파르다고 봄 | 4 | 스펙트럼 노름 아래에서는 −UVᵀ 가 가장 가파르고, 줄어드는 양은 특잇값의 합이다 |
| 직교화가 어떤 노름으로 재도 Adam 보다 가파르다고 봄 | 5 | 「같은 크기」를 스펙트럼 노름으로 재면 직교화, 칸의 최댓값으로 재면 부호가 이긴다 |
| 시작값이 답에 가까우면 반복이 맞을 것이라고 봄 | 6 | 오차가 스텝마다 제곱되므로 오차의 크기가 1보다 작은지가 정한다(1/a 이면 0 < x₀ < 2/a) |
| 뉴턴–슐츠 반복은 어디서 시작해도 UVᵀ 로 간다고 봄 | 7 | 3차 반복은 0 < σ < √3 에서만 1로 끈다. ‖G‖_F 로 나눠 모든 특잇값을 1 아래로 넣는다 |
| 끌림 범위 안이면 몇 번 안에 도착한다고 봄 | 7 | 작은 σ 는 3차에서 한 번에 1.5배씩만 자란다. 5차 계수가 0 근처의 그래디언트를 키운다 |
| Muon 의 계산 덤은 어디서나 몇 % 라고 봄 | 8 | 덤의 비는 T·r/B 다. 한 스텝의 토큰이 적거나 행렬이 넓으면 덤이 원래 계산보다 커진다 |
| 0 고윳값에 −1/4 제곱을 그대로 함 | 9 | 0 고윳값은 버린다. 반올림이 만든 음수·아주 작은 양수는 문턱이나 ε 로 막고, ε 이 펴 줄 특잇값의 하한을 정한다 |
요약
이 장에서 한 일을 정리해 보자. 경사하강이 가장 가파른 내리막이라는 말에는 「스텝의 크기를 유클리드 길이로 잰다」는 약속이 숨어 있었다. 크기를 재는 노름을 바꾸면 같은 그래디언트에서도 가장 가파른 스텝이 바뀐다. 칸마다의 최댓값으로 재면 크기를 버리고 부호만 남긴 부호 하강이 나오고, 이동 평균을 끈 Adam 이 부호 하강이다(번스타인·뉴하우스 2024). 부호 하강은 스텝 크기가 그래디언트와 상관없어 손실의 바닥 둘레를 오가므로 학습률을 줄여 가야 바닥에 닿는다.
한 층의 가중치는 행렬이고, 그 층의 일을 생각하면 스텝의 크기는 출력을 가장 크게 바꾸는 배율, 곧 스펙트럼 노름으로 재는 것이 맞다. 그 아래에서 가장 가파른 스텝은 그래디언트의 특잇값을 모두 1로 바꾼 −UVᵀ 이고, 1차 어림으로 줄어드는 손실은 특잇값의 합이다. 특잇값이 10, 1, 0.05 인 그래디언트를 그대로 걸으면 둘째·셋째 방향에 0.1, 0.005만 쓰지만, 직교화하면 세 방향에 1씩 쓴다. 직교화는 칸끼리의 비율을 지키므로, 노이즈 같은 작은 줄을 칸마다 키우는 부호 하강과 다르게 움직인다. 누적을 끈 Shampoo 도 같은 UVᵀ 를 내놓는다.
UVᵀ 를 스텝마다 특잇값 분해로 구하는 대신, 뉴턴–슐츠 반복은 특이 방향은 두고 특잇값만 다항식으로 옮기는 행렬 곱을 되풀이한다. 슐츠(1933)의 역행렬 반복과 비에르크·보위(1971)의 직교화 반복에서 온 고전 3차 반복은 정확하지만 작은 특잇값에서 느리고, 켈러 조던(2024)이 고른 5차 계수는 정확히 1에 앉는 대신 다섯 번 만에 특잇값을 0.68~1.2 둘레로 모은다. 모멘텀 버퍼를 이렇게 직교화하는 옵티마이저가 Muon 이고, 은닉층의 2차원 가중치에만 쓴다. 공개 속도 경주에서 AdamW 를 이긴 뒤 문샷 AI 의 큰 모델 학습(2025)과 파라미터 1조 개의 Kimi K2 로 이어졌다. 덤으로 드는 계산의 비는 T·r/B 로, 한 스텝에 토큰을 많이 쓰는 프리트레인에서는 0.5~2% 정도다.
막힌 곳
이 장은 스텝의 크기를 재는 노름 하나에 학습률 하나를 곱했다. 그런데 직교화한 스텝은 스펙트럼 노름이 늘 1 근처라, 행렬이 64×64 이든 8192×8192 이든 스텝의 「크기」가 같다. 같은 크기의 스텝이라도 넓은 층에서는 출력의 칸 하나하나가 받는 변화가 좁은 층과 다를 것이다. 그렇다면 폭이 다른 두 모델에 같은 학습률을 써도 될까? 작은 모델에서 공들여 찾은 학습률을 큰 모델로 그대로 옮길 수 있으려면, 학습률과 초기화를 폭에 맞춰 어떻게 바꿔야 할까?
그리고 이 장은 직교화가 왜 학습을 빠르게 하는지를 스텝 한 번의 1차 어림으로만 설명했다. 1차 어림으로 가장 가파른 부호 하강이 손실의 바닥 둘레를 맴돌았듯이, 한 스텝이 가파르다는 것과 학습 전체가 빠르다는 것은 다른 말이다. 수많은 스텝이 쌓인 뒤에도 직교화한 스텝이 더 좋은 곳에 닿는다고 말할 근거는 어디에 있을까?