Dimuon: LoRA 에 맞춰 다시 짠 Muon

혼동하기 쉬운 점과 요약

토론 1. 장난감에서 AdamW 가 이겼으니 Dimuon 은 쓸모없는가

장난감 LoRA 에서 가장 낮은 손실은 AdamW 의 것이었다(랭크 32 에서 0.0004, Dimuon 은 0.0050). 그렇다면 Dimuon 은 AdamW 보다 나쁜 옵티마이저인가?

선생님 T01
선생님

장난감에서 AdamW 가 가장 낮은 손실을 냈어요. Dimuon 은 AdamW 보다 나쁜 옵티마이저일까요?

김민준 M01
김민준

숫자로는 그래 보여요. 랭크 32 에서 열 배 넘게 차이 나잖아요.

이서연 S01
이서연

근데 이 장난감은 정답이 랭크 8 인 선형 문제 하나야. 층도 하나고, 손실이 2차식이고. 큰 언어 모델의 파인튜닝이랑은 거리가 멀지.

선생님 T01
선생님

그러면 무엇이 다를 때 결론이 바뀔 수 있을까요?

김민준 M03
김민준

음… 2차식 손실이면 그래디언트가 매끄럽게 줄어드니까, AdamW 처럼 그래디언트 크기에 맞춰 스텝이 줄어드는 게 유리할 것 같아요. Dimuon 은 노름이 고정이니까 끝에서 정답 둘레를 맴돌고요.

이서연 S08
이서연

학습률 스케줄이 없어서 그런 것도 있겠다. 부호 하강처럼 노름이 고정이면 학습률을 줄여 가야 손실의 바닥에 닿는데, 여기선 300스텝 내내 같은 학습률이었으니까.

선생님 T14
선생님

그래요. 그리고 이 장난감이 보여 준 것 중에 실제 문서와 맞는 건 무엇이었죠?

김민준 M01
김민준

가장 좋은 학습률이 랭크와 상관없이 한 자리였던 것, 학습률이 AdamW 보다 몇 배 컸던 것이요. 원래 Muon 보다 나았던 것도요. 그리고 장난감은 메모리를 안 쟀어요. 큰 모델에서 잰 벤치마크도 품질은 설정마다 엇갈렸는데, 옵티마이저 상태가 4분의 1인 건 어느 설정에서나 같았고요.

이서연 S07
이서연

그러니까 장난감은 각 단계가 무엇을 바꾸는지를 보는 실험이고, 어느 옵티마이저가 나은지는 실제 크기의 모델과 학습률 스케줄로 재야 하는 거네요. 팅커 문서도 자기 평가로 직접 확인하라고 했고요.

혼동하기 쉬운 점

혼동하기 쉬운 생각 나온 문제 바로잡는 법
Dimuon 의 장점은 AdamW 보다 손실을 빨리 낮추는 것이라고 봄 2, 토론 1 회사는 SFT 의 스텝 수를 말했지만 독립 벤치마크의 품질은 설정마다 엇갈렸다. 늘 같은 차이는 옵티마이저 상태가 AdamW 의 4분의 1이라는 점이다
Dimuon 의 식은 회사가 공개한 것이라고 봄 「LoRA 의 가는 두 행렬」 회사는 조절값과 사용법만 밝혔다. 식은 커뮤니티가 스텝을 재어 거꾸로 알아낸 것이고 비트 단위로 같지 않다
LoRA 에서 Muon 의 덤 계산이 프리트레인보다 크다고 봄 1 직교화는 가는 인자에 하므로 덤이 수만 분의 1로 준다. 층을 지나는 원래 계산은 그대로다
반복마다 1에 가까워지는 다항식이 좋은 다항식이라고 봄 3 Polar Express 는 다섯 번 뒤를 겨냥해 중간에 크게 출렁인다. 중간에 멈추면 Muon 보다 나쁘다
조건화는 이번 그래디언트로 계산한다고 봄 「지난 모멘텀으로 행과 열 고르기」 지난 스텝의 모멘텀으로 계산한다. 첫 스텝에서는 꺼진다
조건화의 감쇠 10⁻⁴ 는 없어도 되는 작은 수라고 봄 4 에너지가 0 인 행·열의 배율을 한쪽 10 배로 막는다. 없으면 스텝 방향이 그 한 줄로 쏠린다
노름을 고정하면 튀는 그래디언트를 모두 막는다고 봄 5 크기는 막지만 모멘텀에 들어간 튄 값이 몇 스텝 동안 방향을 끌고 간다. 클리핑은 모멘텀 앞에서 자른다
학습률 10~100 배는 Dimuon 이 더 과감하다는 뜻이라고 봄 「스텝 크기를 랭크로만 정하기」 AdamW 의 스텝 노름은 √(칸 수)에 비례하고 Dimuon 은 √r 에 비례한다. 배수는 대부분 이 차이다
ε 는 늘 작아야 한다고 봄 6 관측기에서는 ε 와 학습률을 함께 크게 두어 스텝이 그래디언트를 옮겨 적게 한다
장난감에서 진 옵티마이저는 나쁜 옵티마이저라고 봄 토론 1 장난감은 각 단계의 효과를 보는 실험이다. 어느 쪽이 나은지는 실제 규모에서 잰다

요약

LoRA 는 고칠 양을 가는 두 인자로 나눠 학습하는 숫자를 수십 분의 1로 줄인다. 싱킹 머신스 랩의 Dimuon 은 이 두 인자를 따로 직교화하는 Muon 계열 옵티마이저이고, 회사는 식을 밝히지 않았다. 바깥에서 재어 보면 가장 분명한 특징은 옵티마이저 상태다. AdamW 가 파라미터마다 32비트 이동 평균 둘(8바이트)을 들고 다니는 데 비해 Dimuon 은 bfloat16 모멘텀 하나(2바이트)만 들고 다녀, Qwen2.5-32B 에 단 랭크 32 LoRA 에서 1.61 GB 가 0.40 GB 로 준다. 같은 벤치마크에서 품질은 설정마다 엇갈렸다. Adam 의 v 가 하던 일은 직교화와, 저장한 모멘텀에서 스텝마다 새로 계산하는 행·열 조건화가 대신한다. 2026년 10월 커뮤니티 재현 결과가 알아낸 한 스텝은 네 단계다. 모멘텀은 보통 이동 평균(β = 0.9)이고, 직교화 앞뒤로 지난 모멘텀의 행·열 에너지의 −1/4 제곱을 곱해 입력이 큰 몇 칸에 스텝이 몰리는 것을 막는다. 직교화는 Muon 의 같은 다항식 다섯 번 대신 반복마다 가장 나쁜 경우를 줄이도록 고른 Polar Express 다항식 다섯 개(암셀 팀 2025)를 쓴다. 마지막으로 스텝의 노름을 η·√r·(r/32)0.175 로 못 박아, 방향은 그래디언트가, 크기는 학습률과 랭크가 정하게 한다.

이 노름 규칙에서 학습률이 AdamW 의 10~100 배여야 하는 이유가 나온다. 폭 4096, 랭크 32 인 인자에서 AdamW 의 스텝 노름은 η·ρ·362, Dimuon 은 η·5.66 이라 배수는 64ρ 다. 장난감 LoRA 에서는 Dimuon 의 가장 좋은 학습률이 랭크 2, 8, 32 모두 같았고 원래 Muon 보다 손실이 낮았지만, 가장 낮은 손실은 AdamW 의 것이었다. 식을 알아낸 방법도 배울 거리다. 이동 평균을 끄고 학습률과 ε 를 모두 10⁴ 로 둔 Adam 은 그래디언트를 옮겨 적는 관측기가 되고, 첫 스텝을 그래디언트의 특이 방향에 비추면 직교화 다항식의 응답이 드러난다.

막힌 곳

재현 결과는 식을 알려 주지만 이유는 알려 주지 않는다. 0.175 라는 지수, 양쪽에 똑같이 나눈 −1/4, 10⁻⁴ 의 감쇠는 모두 서버의 스텝에 맞춘 숫자다. 노름을 랭크의 함수로 못 박는 규칙이 폭이 다른 층과 다른 모델에서도 같은 학습률을 쓰게 해 줄지, 그 규칙을 μP 처럼 원리에서 끌어낼 수 있을지는 아직 답이 없다. 그리고 랭크 128 을 넘는 LoRA, 20스텝을 넘는 학습, 전문가 혼합 모델의 큰 오차처럼 재현 결과가 시험하지 못한 곳에서는 지금의 식이 맞는지도 모른다.