saebench-eval
SAEBench: A Comprehensive Benchmark for Sparse Autoencoders in Language Model Interpretability — Karvonen et al. (2025) (arXiv:2503.09532, 2025)
What this evaluates
Evaluates sparse autoencoder (SAE) architectures across multiple dimensions including reconstruction fidelity, feature disentanglement, concept detection, and practical interpretability tasks. It systematically compares how different SAE designs, dictionary sizes, and sparsity levels impact these capabilities.
Datasets
- Gemma-2-2B — total ?; splits: train (-1)
- Pythia-160M — total ?; splits: train (-1)
Metrics
Loss Recovered (primary) — range: [0, 1]
- Measures reconstruction fidelity by calculating the proportion of variance or loss recovered by the SAE compared to the original residual stream activations.
Automated Interpretability — range: [0, 1]
- Scores the interpretability of individual SAE latents using automated evaluation pipelines, typically involving classifier accuracy or human-alignment proxies.
Absorption — range: [0, 1]
- Quantifies feature absorption, where a single latent captures multiple concepts or subsumes other latents, measured via intervention-based concept isolation tests.
SCR — range: [0, 1]
- Sparse Concept Removal: measures concept detection by zero-ablating a fixed number of top latents and evaluating the drop in concept activation or model performance.
RAVEL — range: [0, 1]
- Evaluates feature disentanglement by measuring how cleanly individual latents correspond to distinct, non-overlapping concepts or features.
Sparse Probing — range: [0, 1]
- Assesses concept detection by training sparse linear probes (1-sparse or K-sparse) on SAE latents to predict target concepts or properties.
TPP — range: [0, 1]
- Targeted Probe Perturbation: measures disentanglement by perturbing specific latents and observing the isolated effect on model outputs or concept representations.
sparsity-fidelity frontier — range: other
- A proxy metric plotting reconstruction fidelity against sparsity (L0) to evaluate the trade-off between reconstruction quality and activation sparsity.
Input / output format
Input: Residual stream activations extracted from specific layers of language models (e.g., layer 12 of Gemma-2-2B, layer 8 of Pythia-160M).
Output: Sparse latent activations and reconstructed activations from the SAE. For metric evaluation, scalar scores representing fidelity, disentanglement, or concept detection performance.
Scoring recipe
def compute_sae_metrics(sae_latents, original_activations, concept_labels):
# Loss Recovered (reconstruction fidelity)
loss_recovered = 1 - mse(sae_latents, original_activations) / var(original_activations)
# SCR (Sparse Concept Removal)
top_latents = get_top_k_indices(sae_latents, k=10)
zero_ablated = sae_latents.copy()
zero_ablated[:, top_latents] = 0
scr_score = concept_accuracy(original_activations) - concept_accuracy(zero_ablated)
# Sparse Probing
probe = train_sparse_probe(sae_latents, concept_labels, sparsity=1)
probing_score = probe.evaluate(concept_labels)
return loss_recovered, scr_score, probing_score
Common pitfalls
- Relying solely on the sparsity-fidelity frontier, which does not reliably correlate with interpretability or disentanglement performance.
- Restricting sparsity sweeps to the conventional L0 in [20, 200] range, which misses optimal settings for disentanglement metrics that prefer L0 > 400.
- Scaling dictionary size with a fixed compute budget rather than fixed training steps/data, which confounds scaling trend analysis.
Evidence (verbatim from paper)
Matryoshka Batch TopK SAEs perform best on concept detection and feature disentanglement tasks, especially in the typical L0 range of 40-200 (5 of 8 metrics). Most notably, the Matryoshka SAE obtains best scores on several metrics (Absorption, RAVEL, Sparse Probing, and SCR in Figure 2 and TPP in Figure J) while performing worse than TopK and BatchTopK on the sparsity-fidelity frontier (Figure 2, upper left).
Citation
@misc{karvonen2025saebench,
title={SAEBench: A Comprehensive Benchmark for Sparse Autoencoders in Language Model Interpretability},
author={Karvonen et al. (2025)},
year={2025},
note={arXiv:2503.09532}
}
1---2name: saebench-eval3description: Evaluates sparse autoencoder (SAE) architectures across multiple dimensions including reconstruction fidelity, feature disentanglement, concept detection, and practical interpretability tasks. It systematically compares how different SAE designs, dictionary sizes, and sparsity levels impact these capabilities. Use when the user wants to benchmark on Gemma-2-2B, Pythia-160M, or asks about evaluating this task. Reports Loss Recovered.4---56# saebench-eval78> SAEBench: A Comprehensive Benchmark for Sparse Autoencoders in Language Model Interpretability — Karvonen et al. (2025) (arXiv:2503.09532, 2025)910## What this evaluates1112Evaluates sparse autoencoder (SAE) architectures across multiple dimensions including reconstruction fidelity, feature disentanglement, concept detection, and practical interpretability tasks. It systematically compares how different SAE designs, dictionary sizes, and sparsity levels impact these capabilities.1314## Datasets1516- **Gemma-2-2B** — total ?; splits: train (-1)17- **Pythia-160M** — total ?; splits: train (-1)1819## Metrics2021- `Loss Recovered` **(primary)** — range: [0, 1]22 - Measures reconstruction fidelity by calculating the proportion of variance or loss recovered by the SAE compared to the original residual stream activations.23- `Automated Interpretability` — range: [0, 1]24 - Scores the interpretability of individual SAE latents using automated evaluation pipelines, typically involving classifier accuracy or human-alignment proxies.25- `Absorption` — range: [0, 1]26 - Quantifies feature absorption, where a single latent captures multiple concepts or subsumes other latents, measured via intervention-based concept isolation tests.27- `SCR` — range: [0, 1]28 - Sparse Concept Removal: measures concept detection by zero-ablating a fixed number of top latents and evaluating the drop in concept activation or model performance.29- `RAVEL` — range: [0, 1]30 - Evaluates feature disentanglement by measuring how cleanly individual latents correspond to distinct, non-overlapping concepts or features.31- `Sparse Probing` — range: [0, 1]32 - Assesses concept detection by training sparse linear probes (1-sparse or K-sparse) on SAE latents to predict target concepts or properties.33- `TPP` — range: [0, 1]34 - Targeted Probe Perturbation: measures disentanglement by perturbing specific latents and observing the isolated effect on model outputs or concept representations.35- `sparsity-fidelity frontier` — range: other36 - A proxy metric plotting reconstruction fidelity against sparsity (L0) to evaluate the trade-off between reconstruction quality and activation sparsity.3738## Input / output format3940**Input**: Residual stream activations extracted from specific layers of language models (e.g., layer 12 of Gemma-2-2B, layer 8 of Pythia-160M).4142**Output**: Sparse latent activations and reconstructed activations from the SAE. For metric evaluation, scalar scores representing fidelity, disentanglement, or concept detection performance.4344## Scoring recipe4546```python47def compute_sae_metrics(sae_latents, original_activations, concept_labels):48 # Loss Recovered (reconstruction fidelity)49 loss_recovered = 1 - mse(sae_latents, original_activations) / var(original_activations)50 51 # SCR (Sparse Concept Removal)52 top_latents = get_top_k_indices(sae_latents, k=10)53 zero_ablated = sae_latents.copy()54 zero_ablated[:, top_latents] = 055 scr_score = concept_accuracy(original_activations) - concept_accuracy(zero_ablated)56 57 # Sparse Probing58 probe = train_sparse_probe(sae_latents, concept_labels, sparsity=1)59 probing_score = probe.evaluate(concept_labels)60 61 return loss_recovered, scr_score, probing_score62```6364## Common pitfalls6566- Relying solely on the sparsity-fidelity frontier, which does not reliably correlate with interpretability or disentanglement performance.67- Restricting sparsity sweeps to the conventional L0 in [20, 200] range, which misses optimal settings for disentanglement metrics that prefer L0 > 400.68- Scaling dictionary size with a fixed compute budget rather than fixed training steps/data, which confounds scaling trend analysis.6970## Evidence (verbatim from paper)7172> Matryoshka Batch TopK SAEs perform best on concept detection and feature disentanglement tasks, especially in the typical L0 range of 40-200 (5 of 8 metrics). Most notably, the Matryoshka SAE obtains best scores on several metrics (Absorption, RAVEL, Sparse Probing, and SCR in Figure 2 and TPP in Figure J) while performing worse than TopK and BatchTopK on the sparsity-fidelity frontier (Figure 2, upper left).7374## Citation7576```bibtex77@misc{karvonen2025saebench,78 title={SAEBench: A Comprehensive Benchmark for Sparse Autoencoders in Language Model Interpretability},79 author={Karvonen et al. (2025)},80 year={2025},81 note={arXiv:2503.09532}82}83```8485- arXiv: 2503.09532