The Low-Rank Structure of VLA Reinforcement Learning
Organizations: Graduate School of Data Science, Seoul National University
Abstract
Reinforcement learning (RL) is increasingly used to post-train vision-language-action (VLA) models, yet how RL reshapes these policies remains poorly understood. We find that RL across widely used flow-based VLA models, including and GR00T~N1.5/N1.6, on LIBERO, ManiSkill, MetaWorld, and CALVIN induces substantially lower-rank parameter updates that are highly concentrated in the action expert's Timestep Modules, a small and previously overlooked component. Through systematic module-replacement experiments, we further show that these modules capture a disproportionate share of the performance gains from RL. We then characterize what is encoded in these Timestep Modules. First, we show that RL specializes them to the discrete denoising timesteps used during rollouts, and that this discrete-timestep training underlies the low-rank updates. Second, we find that among their outputs, the shift vector changes most distinctly under RL, and through probing, we show that shift update directions strongly predict task success (ROC-AUC up to ). Third, we find that the geometry of shift updates reflects task relationships, as their pairwise similarity correlates with cross-task transfer patterns. Building on these findings, we show that steering along shift update directions further improves RL-trained policies without additional RL training. Overall, we provide a systematic understanding of how RL reshapes VLA policies by studying how learned signals are encoded in parameter space, offering insights into more efficient and interpretable VLA post-training.
Figures & tables
| Base Policy | RL Policy | ||||
| Benchmark | Condition | F1 | AUC | F1 | AUC |
| LIBERO-Spatial | Ours | 97.1 | 99.6 | 96.3 | 96.6 |
| Random | |||||
| LIBERO-Object | Ours | 98.2 | 98.6 | 97.3 | 97.4 |
| Random | |||||
| LIBERO-Goal | Ours | 77.5 | 98.9 | 74.9 | 68.0 |
| Checkpoint | RL | Random | Steered |
|---|---|---|---|
| LIBERO-Spatial | 86.7 | 90.0 | |
| LIBERO-Object | 94.7 | 96.7 | |
| LIBERO-Goal | 90.7 | 94.7 | |
| ManiSkill | 90.0 | 92.0 | |
| MetaWorld | 66.7 | 68.7 |
Appendix figures & tables28 assets
Supplementary material from the paper’s appendix.
Appendix
| GR00T N1.5 | GR00T N1.6 | SmolVLA | ||
|---|---|---|---|---|
| Expert hidden size | 1,024 | 1,536 | 1,536 | 720 |
| Adaptive normalization | AdaRMSNorm | AdaLayerNorm | AdaLayerNorm | – |
| Modulation outputs | scale, shift, gate | scale, shift | scale, shift | – |
| Timestep parameters (M) | 118.60 | 158.52 | 234.07 | 0.52 |
| Action expert parameters (M) | 430.10 | 1,068.81 | 1,418.62 | 99.88 |
| Timestep share of action expert (%) | 27.58 | 14.83 | 16.50 | 0.52 |
| Update | Benchmark | Reference | Post-trained checkpoint |
|---|---|---|---|
| BC | LIBERO | OpenPI base | LIBERO few-shot SFT |
| BC | MetaWorld | OpenPI base | MetaWorld SFT |
| BC | ManiSkill | OpenPI base | ManiSkill-25Main SFT |
| BC | CALVIN | OpenPI base | CALVIN ABC-D SFT |
| BC | LIBERO | LIBERO few-shot SFT | LIBERO full-shot SFT |
| GR00T N1.5 | GR00T N1.6 | ||||||
| Hyperparameter | Spatial | Object | Goal | Spatial | Object | Goal | Spatial |
| Optimization | |||||||
| Max steps | 150 | 120 | 150 | 25 | 5 | 5 | 5 |
| Global batch size | 2048 | 2048 | 2048 | 1024 | 768 | 1024 | 720 |
| Update epochs | 1 | 1 | 4 | 4 | 4 | 4 | 4 |
| Actor learning rate | |||||||
| Hyperparameter | LIBERO |
|---|---|
| Optimizer steps | 1800 |
| Global batch size | 2048 |
| Learning rate | |
| Weight decay | 0.01 |
| Gradient clipping norm | 1.0 |
| Action horizon | 10 |
| Model | Reference | RL checkpoint |
|---|---|---|
| DanceGRPO | FLUX.1-dev | xzyhku/flux_hpsv2.1_dancegrpo , checkpoint-300-0 |
| Pref-GRPO | FLUX.1-dev | CodeGoat24/FLUX.1-dev-PrefGRPO |
| SeFi-Image | SeFi-Image-5B-Base-diffusers | SeFi-Image-5B-RL-diffusers |
| VideoRLVR | DarthZhu/VideoRLVR-Wan2.2-Base | DarthZhu/VideoRLVR-Wan2.2 |
| Condition | Spatial | Object | Goal | ManiSkill | MetaWorld | CALVIN |
|---|---|---|---|---|---|---|
| Base | 85.0 | 95.4 | 82.8 | 42.2 | 42.8 | 61.8 |
| Timestep Modules only | 94.8 | 99.0 | 91.4 | 87.5 | 69.6 | 87.0 |
| w/o Top Singular Directions | 79.6 | 51.8 | 78.4 | 53.8 | 22.6 | 48.7 |
| w/ Top Singular Directions Only | 90.4 | 96.6 | 89.4 | 88.4 | 66.6 | 86.7 |
| GR00T N1.5 | GR00T N1.6 | |||
|---|---|---|---|---|
| Condition | Spatial | Object | Goal | Spatial |
| Base | 49.4 | 62.4 | 51.4 | 75.6 |
| Timestep Modules only | 52.6 | 81.6 | 49.8 | 84.8 |
| w/o Top Singular Directions | 51.0 | 65.2 | 46.2 | 81.2 |
| w/ Top Singular Directions Only | 51.8 | 81.2 | 51.8 | 84.0 |
| LoRA target | 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Time MLP + AdaRMS | 85.0 | 85.6 | 90.0 | 91.4 | 91.8 | 92.0 | 90.8 | 92.0 | 94.2 | 93.0 | 93.0 |
| Attn + FFN | 85.0 | 81.0 | 83.4 | 87.0 | 89.4 | 89.0 | 91.6 | 91.4 | 92.0 | 92.0 | 91.4 |
| Base Policy | RL Policy | ||||
| Benchmark | Method | F1 | AUC | F1 | AUC |
| LIBERO Spatial | Logistic | 97.1 | 99.6 | 96.3 | 96.6 |
| Single-Position | 93.6 | 99.0 | 85.7 | 78.0 | |
| Random | |||||
| LIBERO Object | Logistic | 98.2 | 98.6 | 97.3 | 97.4 |
| Single-Position | 97.8 | 98.2 | 97.3 | 94.7 | |
| Model | Benchmark | Original (+) | Reverse ( ) |
|---|---|---|---|
| Base | LIBERO Spatial | 58.4 | 41.6 |
| LIBERO Object | 62.7 | 37.3 | |
| LIBERO Goal | 43.2 | 56.8 | |
| ManiSkill | 44.6 | 55.4 | |
| MetaWorld | 52.4 | 47.6 | |
| Average | 52.6 | 47.4 |
| Benchmark | Base | RL | Steering coefficient | Best Recovery | |||
|---|---|---|---|---|---|---|---|
| 0.5 | 1.0 | 1.5 | 2.0 | (%) | |||
| LIBERO Goal | 82.8 | 93.6 | 88.2 | 84.4 | 79.8 | 73.2 | 50.0 |
| LIBERO Object | 95.4 | 99.2 | 95.2 | 97.6 | 98.0 | 98.8 | 89.5 |
| LIBERO Spatial | 85.0 | 96.6 | 86.4 | 92.0 | 90.0 | 90.2 | 60.3 |
| ManiSkill | 42.2 | 89.1 | 48.4 | 55.3 | 57.5 | 63.8 | 46.1 |
| MetaWorld | 42.8 | 69.2 | 56.4 | 59.4 | 58.6 | 57.2 | 62.9 |