RODE: A Radial-Orthogonal Decoupled Engine for Optimization
Organizations: Zhejiang University, Hangzhou, China
Abstract
Modern neural network training increasingly uses matrix-aware optimizers, yet their conditioned matrix step is typically added directly to the weight, jointly changing its norm and direction. This interaction matters because the current norm determines angular motion, while directional learning can drive norm growth and thereby alter later steps. We introduce RODE, which gives the radial and directional components separate update rules and step sizes. RODE explicitly updates the matrix Frobenius norm through a scalar radial rule, while its directional channel performs Newton--Schulz-conditioned updates in the tangent space. Controlled GPT-2 interventions show gains from both direct norm control and RODE's directional update. Across two language-modeling and two image-classification tasks, RODE outperforms both Muon variants in every direct comparison and ends with lower full-model norms. At 1.5B scale, using the learning rate transferred directly from the Qwen2-style LM sweep, RODE lowers loss from 4.145 to 3.346 and final global norm from 11964 to 2183 relative to Muon RMS, with fixed-radius RODE improving further. For Qwen3.5-9B full-parameter fine-tuning, all six optimizers use the same tuning budget and the same formal-training and evaluation settings; RODE outperforms both Muon variants on all four evaluation tasks and attains the highest mean on GSM8K and MATH-500. Thus, decoupling radial and directional dynamics offers a more effective and controllable approach to matrix optimization.
Figures & tables
| Optimizer | GPT-2 loss | Qwen2-style LM loss | CIFAR acc. | ImageNet acc. |
|---|---|---|---|---|
| AdamW | ||||
| Muon Original | ||||
| Muon RMS | ||||
| SGD | – | – | ||
| RODE | ||||
| RODE-SNR |
| Optimizer | GPT-2 | Qwen2-style LM | CIFAR-100 | ImageNet-1K |
|---|---|---|---|---|
| AdamW | ||||
| Muon Original | ||||
| Muon RMS | ||||
| SGD | – | – | ||
| RODE | ||||
| RODE-SNR |
| Condition | Direction update | Radius policy | Val. loss | vs. Muon |
|---|---|---|---|---|
| Muon RMS | additive Muon | implicit | – | |
| Muon + NormProj | additive Muon | fixed by projection | ||
| RODE, fixed | RODE tangent stack | fixed | ||
| Full RODE | RODE tangent stack | learned scalar |
| Optimizer | Best cache loss | Final cache loss | Final observed global norm |
|---|---|---|---|
| RODE, fixed | |||
| RODE | |||
| Muon RMS |
| Optimizer | Best val. loss | GSM8K | MATH-500 | MMLU-STEM | MMLU-Pro Math |
|---|---|---|---|---|---|
| AdamW | |||||
| Muon Original | |||||
| Muon RMS | |||||
| Adafactor | |||||
| SOAP | |||||
| RODE |
| Variant | Intervention | Final val. | |
|---|---|---|---|
| Full RODE | Full engine | – | |
| RODE-SNR | Add tangent-gradient ratio damping | ||
| w/o Newton–Schulz | Remove projected NS conditioning | ||
| w/o geodesic | Use normalized retraction | ||
| RODE, radius fixed | Hold radius fixed | ||
| Radial-only control | Hold direction fixed |
| Task | Optimizer | State | Peak | Step | Opt. | Throughput |
|---|---|---|---|---|---|---|
| (MB) | (GB) | (ms) | (ms) | (vs. AdamW) | ||
| Qwen2-style LM | AdamW | 913.0 | 10.92 | 102.0 | 9.0 | |
| Muon Original | 611.0 | 10.62 | 131.3 | 37.7 | ||
| Muon RMS | 611.0 | 10.62 | 132.4 | 39.1 | ||
| SOAP | 2643.2 | 12.67 | 137.3 | 42.1 | ||
| MARS-M | 913.0 | 10.96 | 158.9 | 68.1 |
Appendix figures & tables18 assets
Supplementary material from the paper’s appendix.
Appendix
| Input: parameter , gradient , raw buffer , learning rates , momentum , floor , NS steps , and safeguards . |
| 1. If , form , , and . 2. Set . 3. Set and . 4. Set . 5. Transpose and if needed so rows columns; initialize in the nonzero branch. 6. For , set Undo any transpose and set . 7. For , set , , and . Renormalize . 8. Write and store . |
| Optimizer | Matrix-parameter update | Non-matrix update | Fixed optimizer constants |
|---|---|---|---|
| AdamW | AdamW on matrix parameters | AdamW on all remaining parameters | betas |
| Muon Original | Muon, original LR scaling | AdamW | momentum ; matrix wd |
| Muon RMS | Muon, RMS-matched LR scaling | AdamW | momentum ; matrix wd |
| RODE | Radial update + tangent Newton–Schulz geodesic step | AdamW | momentum ; NS steps ; ; |
| RODE-SNR | RODE Add tangent-gradient ratio damping | AdamW | RODE constants; ratio clamp |
| SOAP | SOAP on matrix parameters | AdamW | betas , precondition frequency , max precondition dim |
| Source | Optimizer | Budget | Search space |
|---|---|---|---|
| GPT-2 | AdamW | ; weight decay | |
| GPT-2 | Muon Original | ; | |
| GPT-2 | Muon RMS | ; | |
| GPT-2 | RODE/RODE-SNR | ; ; | |
| Qwen2-style | AdamW | ||
| Qwen2-style | Muon Original/Muon RMS | ; |
| Optimizer | Matrix wd | 1D wd | Source | |||
|---|---|---|---|---|---|---|
| AdamW | – | GPT-2 sweep | ||||
| Muon Original | – | GPT-2 sweep | ||||
| Muon RMS | – | GPT-2 sweep | ||||
| RODE | GPT-2 sweep | |||||
| RODE-SNR | GPT-2 sweep | |||||
| SOAP | – | Qwen transfer |
| Optimizer | Matrix wd | 1D wd | Source | |||
|---|---|---|---|---|---|---|
| AdamW | – | Qwen sweep | ||||
| Muon Original | – | Qwen sweep | ||||
| Muon RMS | – | Qwen sweep | ||||
| RODE | Qwen sweep | |||||
| RODE-SNR | Qwen sweep | |||||
| SOAP | – | Qwen sweep |
| Optimizer | Matrix wd | 1D wd | Accum. | Implementation | |||
|---|---|---|---|---|---|---|---|
| RODE, fixed | fused RODE, fixed radius | ||||||
| RODE | fused RODE, chunk 2 | ||||||
| Muon RMS | – | PyTorch Muon RMS |
| Optimizer | Search space | Selected | Selected | Selected |
|---|---|---|---|---|
| AdamW | – | Same | ||
| Muon Original | ; | – | ||
| Muon RMS | ; fixed | – | ||
| Adafactor | – | Same | ||
| SOAP | ; | – | ||
| RODE | ; ; |
| Optimizer | Matrix wd | 1D wd | Source | |||
|---|---|---|---|---|---|---|
| AdamW | – | GPT-2 transfer | ||||
| Muon Original | – | GPT-2 transfer | ||||
| Muon RMS | – | GPT-2 transfer | ||||
| RODE | GPT-2 transfer | |||||
| RODE-SNR | GPT-2 transfer | |||||
| SOAP | – | Qwen transfer |
| Optimizer | Matrix wd | 1D wd | Source | |||
|---|---|---|---|---|---|---|
| AdamW | – | GPT-2 transfer | ||||
| Muon Original | – | GPT-2 transfer | ||||
| Muon RMS | – | GPT-2 transfer | ||||
| RODE | GPT-2 transfer | |||||
| RODE-SNR | GPT-2 transfer | |||||
| SGD | – | standard |
| Experiment | Optimizers | Shared training protocol | Hyperparameter policy |
|---|---|---|---|
| GPT-2 norm–direction intervention | Muon RMS, Muon + NormProj, RODE with fixed radius, full RODE | standard GPT-2/WikiText-103; 8000 steps; effective batch 128; 100 warmup steps; cosine decay; three distinct seeds | Muon + NormProj inherits Muon RMS rates; the fixed-radius control inherits RODE rates and holds each matrix radius at initialization |
| RODE component ablation | RODE, RODE-SNR, fixed-radius control, radial-only control, w/o Newton–Schulz, w/o geodesic | Qwen2-style LM/WikiText-103; 114M parameters; 4000 steps; effective batch 128; 200 warmup steps; cosine decay; three distinct seeds | RODE-SNR uses its independently swept row in Table 11 ; structural variants inherit RODE’s learning rates |
Neural Network Optimization
Neural network optimization studies algorithms and training dynamics that help models learn efficiently, reliably, and generalize well.
See all 332 papers