Keep pulling the thread on John Schulman.
Low-rank adaptation (LoRA) underperforms full fine-tuning on very large datasets that exceed the storage capacity of LoRA's parameters.
For supervised fine-tuning on small-to-medium-sized instruction-tuning and reasoning datasets, Low-rank adaptation (LoRA) performs the same as full fine-tuning.
Low-rank adaptation (LoRA) performs better when applied to all weight matrices, especially the MLP and Mixture-of-Experts (MoE) layers.
For reinforcement learning using policy gradient algorithms, Low-rank adaptation (LoRA) performs equivalently to full fine-tuning, even with ranks as low as 1.
The optimal learning rate for Low-rank adaptation (LoRA) is consistently 10 times higher than for full fine-tuning (FullFT) across both supervised learning and reinforcement learning.
Low-rank adaptation (LoRA) enables multi-tenant serving, where a single inference server can keep many adapters in memory and sample from them simultaneously in a batched way.
Inference engines vLLM and SGLang implement multi-tenant LoRA serving.
Low-rank adaptation (LoRA) can be trained on a hardware layout only slightly larger than what is used for sampling due to its lower memory usage compared to full fine-tuning.
Low-rank adaptation (LoRA) is less tolerant of large batch sizes than full fine-tuning, paying a larger penalty in loss as batch size increases.
The performance penalty Low-rank adaptation (LoRA) experiences with large batch sizes is not mitigated by increasing the LoRA rank.
Applying Low-rank adaptation (LoRA) only to attention layers underperforms applying it to all layers, even when the number of trainable parameters is matched by using a higher rank.
The 1/r scaling factor in the Low-rank adaptation (LoRA) parametrization makes the optimal learning rate approximately independent of the rank.