Sparse autoencoders (SAEs)
Persona Vectors: Monitoring and Controlling Character Traits in Language Models — inherited; Sparse Autoencoders Find Highly Interpretable Features in Language Models — introduced
An unsupervised dictionary-learning technique that trains a sparsity-penalized, single-hidden-layer autoencoder on a neural network's internal activations, decomposing them into an overcomplete set of individually interpretable 'dictionary features' rather than relying on individual neurons or a model's raw coordinate basis. Introduced by Cunningham, Ewart, Riggs, Huben & Sharkey (2023) as a scalable, task-agnostic method for resolving superposition in language models, and later adopted by other papers as a general-purpose, unsupervised way to find meaningful directions in activation space.
Understanding a language model's internals would be far simpler if each neuron tracked one clean idea, but a single neuron routinely fires for several unrelated concepts at once, and no amount of staring at it in isolation resolves which one it really means. Sparse autoencoders were introduced as a way past that impasse, decomposing a model's activations, without labels or any preconceived list of concepts, into a much larger set of directions each pushed toward standing for just one coherent idea.
The rest of this entry covers why the method takes the shape it does, what its case studies and causal experiments showed about individual learned features, and where its own limitations sit — gaps a later paper inherited, and partly worked around, by adopting the same architecture as an unsupervised route to its own trait directions.
Why sparse autoencoders exist
Sparse autoencoders exist to address a specific obstacle to understanding what a neural network is doing internally: individual neurons are often polysemantic, activating in multiple, semantically unrelated contexts, which prevents concise human-understandable explanations of the network's computation (sparse-autoencoders, §"1 INTRODUCTION", p. 1). The paper adopts Superposition (Elhage et al., 2022b) as the hypothesized cause: a network represents more features than it has neurons or dimensions by packing them into an overcomplete set of non-orthogonal directions, relying on those features activating sparsely enough that interference between them rarely matters (sparse-autoencoders, §"1 INTRODUCTION", p. 1). That hypothesis reframes 'find interpretable units' as a concrete recovery problem -- the sparse dictionary learning problem of Olshausen & Field (1997) -- and sparse autoencoders are the paper's proposed method for solving that recovery problem at the scale of a real language model, building on an unpublished interim report by Sharkey, Braun & Millidge (2023) and extending prior work by Yun et al. (2021) that had applied related sparse-coding ideas without the interpretability and causal evaluations this paper adds (sparse-autoencoders, §"1 INTRODUCTION", p. 2).
The autoencoder architecture and training objective
At its core an SAE is a single-hidden-layer, ReLU autoencoder trained to reconstruct a batch of activation vectors through a much wider bottleneck than the original representation, forcing each vector to be explained by only a handful of active dictionary features rather than all of them at once (sparse-autoencoders, §"2 TAKING FEATURES OUT OF SUPERPOSITION WITH SPARSE DICTIONARY LEARNING", p. 2). Concretely, for an activation vector $x \in \mathbb{R}^{d_{in}}$, the encoder produces a sparse code $c = \mathrm{ReLU}(Mx + b)$ and the decoder reconstructs $\hat{x} = M^T c = \sum_i c_i f_i$, where $M \in \mathbb{R}^{d_{hid} \times d_{in}}$ is a single, tied weight matrix whose rows $f_i$ are the dictionary features themselves, normalized to unit norm so the L1 penalty cannot be gamed by rescaling the dictionary (sparse-autoencoders, §"2 TAKING FEATURES OUT OF SUPERPOSITION WITH SPARSE DICTIONARY LEARNING", p. 3). The hidden dimension $d_{hid} = R \cdot d_{in}$ is set by the expansion factor R (sparse-autoencoders, §"2 TAKING FEATURES OUT OF SUPERPOSITION WITH SPARSE DICTIONARY LEARNING", p. 2), and training minimizes $$L(x) = \|x - \hat{x}\|_2^2 + \alpha\|c\|_1$$ where the first term is Reconstruction loss and the second is Sparsity loss (L1 penalty on feature activations) (sparse-autoencoders, §"2 TAKING FEATURES OUT OF SUPERPOSITION WITH SPARSE DICTIONARY LEARNING", p. 3). The two terms are in tension: the model must reconstruct activations well but with as few active dictionary features as possible per input, and the balance between them, together with R, is what the Sparsity-reconstruction tradeoff (no single correct decomposition) and Dead features track.
What the 2023 paper demonstrated
Trained on the residual streams of Pythia-70M and Pythia-410M, these dictionaries were shown, via an automated autointerpretability score (Bills et al., 2023), to be substantially more interpretable than the default neuron basis, random directions, PCA, and ICA baselines, an advantage that was strongest in early layers and narrowed by the model's final layer (sparse-autoencoders, §"3.2 SPARSE DICTIONARY FEATURES ARE MORE INTERPRETABLE THAN BASELINES", p. 5). On the Indirect Object Identification task, patching the paper's sparse dictionary features into the residual stream reached a given KL divergence from a target output using fewer patches and smaller edit magnitude than patching PCA components, a gap the paper traced specifically to the sparsity penalty rather than to any general flexibility of dictionary learning (sparse-autoencoders, §"4.2 PRECISE LOCALISATION OF IOI DICTIONARY FEATURES", p. 6). Case studies on individual dictionary features demonstrated Monosemanticity directly: an apostrophe-detecting feature activated almost exclusively on apostrophes, unlike the mixed patterns a comparable residual-stream coordinate showed (sparse-autoencoders, §"5.1 INPUT: DICTIONARY FEATURES ARE HIGHLY MONOSEMANTIC", p. 7), had an intuitive causal effect on next-token logits when ablated (sparse-autoencoders, §"5.2 OUTPUT: DICTIONARY FEATURES HAVE INTUITIVE EFFECTS ON THE LOGITS", p. 7), and a separate closing-parenthesis feature could be traced to the upstream features that caused it to activate via automatic feature circuit detection (sparse-autoencoders, §"5.3 INTERMEDIATE FEATURES: DICTIONARY FEATURES ALLOW AUTOMATIC CIRCUIT DETECTION", p. 8). The paper closes by naming the ambition this evidence was meant to serve: enumerative safety, a complete human-understandable enumeration of a model's features sufficient to guarantee it will not perform dangerous behaviors, calling its own results 'a step towards achieving this ambition' rather than an instance of it (sparse-autoencoders, §"6.3 CONCLUSION", p. 9).
Where the method fell short
The paper was candid about its limitations. Reconstruction loss never reached zero, meaning the dictionaries fail to capture all the information present in a layer's activations (sparse-autoencoders, §"6.2 LIMITATIONS AND FUTURE WORK", p. 8); substituting Pythia-70M's layer-2 residual stream with its SAE reconstruction, measured via the Reconstruction-substitution perplexity metric, raised Pile perplexity from 25 to 40 (sparse-autoencoders, §"6.2 LIMITATIONS AND FUTURE WORK", p. 9). Porting the same recipe to MLP sublayer activations had 'mixed success': many MLP dictionary features were still more interpretable than individual neurons, but the dictionaries developed large numbers of Dead features and the training pipeline did not yet robustly learn overcomplete bases in the middle and later MLP layers (sparse-autoencoders, §"C.3 INTERPRETING THE MLP SUBLAYER", p. 15). Sweeping the sparsity coefficient never revealed a distinguished 'knee' in the tradeoff between sparsity and reconstruction accuracy, which the paper read as weak evidence against a single uniquely correct sparse decomposition of a given activation space -- the Sparsity-reconstruction tradeoff (no single correct decomposition) (sparse-autoencoders, §"B SPARSE AUTOENCODER TRAINING AND HYPERPARAMETER SELECTION", p. 12). These are the specific dimensions along which the method's founding claim -- that it can resolve superposition at all -- remained only partially established rather than fully closed.
What Persona Vectors later inherited
Two years later, Persona Vectors (2025) adopted this same architecture as a second, unsupervised route to persona-relevant directions, distinct from its own supervised Automated persona vector extraction pipeline. It trained BatchTopK SAEs (Bussmann et al., 2024) on every fourth layer of Qwen-2.5-7B-Chat's residual stream, using 131,072 features against a residual-stream dimension of 3,584 -- roughly a 37x expansion factor -- and reported results at sparsity level k = 64 active features per token, trained on a mix of pretraining text (the Pile), chat data (LMSYS-Chat-1M), and misalignment data (persona-vectors, §"M.1 SAE training details", p. 59). Training even one such SAE is a far heavier investment than the extraction pipeline's 400 rollouts per trait and single mean-difference computation, but the payoff is that the dictionary is trait-agnostic: any persona vector, for a trait targeted by the pipeline or not, can later be projected onto it and decomposed via SAE decomposition of persona vectors, without rerunning contrastive extraction (persona-vectors, §"8 Limitations", p. 13). Persona Vectors frames this unsupervised property as a genuine advantage over its own labeled approach: SAEs 'may therefore enable unsupervised discovery of persona-relevant directions, including specific traits that cannot be easily elicited through prompting' (persona-vectors, §"8 Limitations", p. 13), making sparse-autoencoders in this later paper an unsupervised alternative sitting alongside steering vectors built by construction from labeled contrast pairs.