SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2402.15415 · ICML · 2024

Understanding Catastrophic Forgetting In LoRA via Mean-Field Attention Dynamics

Hugo Koubbi, Louis Hernandez, Matthieu Boussard, Small Lora, Large Lora

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 2 functions out of this paper's own repositories and ran 2 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
HugoKoubbi/Transformers-2024-LoRA canonical 2 of 2
FunctionStatusWhere it lives
formatting_func Ran HugoKoubbi/Transformers-2024-LoRA/Llama2_Experiments/code/finetuning_llama2.py
pointer only (licence: NONE) · get_code("ead8df8503bc811b")
process_prompt Ran HugoKoubbi/Transformers-2024-LoRA/Llama2_Experiments/code/finetuning_llama2.py
pointer only (licence: NONE) · get_code("713c3e4a1a9bfdd2")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Low-Rank Adaptation (LoRA) is the dominant parameter-efficient fine-tuning method due to its favorable compute-performance trade-off, yet it suffers from catastrophic forgetting. We study forgetting through a tractable mean-field selfattention toy model, where tokens evolve as an interacting particle system and LoRA acts as a low-rank perturbation. Using tools from partial differential equations and dynamical systems, we characterize regimes suggesting a phase transition between forgetting and non-forgetting behavior. We show that one phase transition appears with respect to the norm of the perturbation, and the other with respect to the depth of the Transformers. We further bound the time-to-deviation in terms of the perturbation size and spectral quantities, and corroborate the predicted trends with experiments and exploratory analyses on real models under LoRA fine-tuning.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2402.15415")
get_code_for_paper("2402.15415")
have("2402.15415")

Connect an agent — have() is free.