Cross-Layer Discrete Concept Discovery for Interpreting Language Models

Ankur Garg, Xuemin Yu, Hassan Sajjad, Samira Ebrahimi Kahou
6/24/2025
cs.LGcs.AIcs.CL

No official code found. Best implementation: agarg-dev/CLVQVAE (0 stars, CC0-1.0, last commit 2025-11-14).

Abstract

Uncovering emergent concepts across transformer layers remains a significant challenge because the residual stream linearly mixes and duplicates information, obscuring how features evolve within large language models. Current research efforts primarily inspect neural representations at single layers, thereby overlooking this cross-layer superposition and the redundancy it introduces. These representations are typically either analyzed directly for activation patterns or passed to probing classifiers that map them to a limited set of predefined concepts. To address these limitations, we propose cross-layer VQ-VAE (CLVQ-VAE), a framework that uses vector quantization to map representations across layers and in the process collapse duplicated residual-stream features into compact, interpretable concept vectors. Our approach uniquely combines top-k temperature-based sampling during quantization with EMA codebook updates, providing controlled exploration of the discrete latent space while maintaining code-book diversity. We further enhance the framework with scaled-spherical k-means++ for codebook initialization, which clusters by directional similarity rather than magnitude, better aligning with semantic structure in word embedding space.

View on arXivView PDF

Code Implementations(1)

agarg-dev/CLVQVAECommunity72%
CC0-1.0

Cross-Layer Discrete Concept Discovery for Explanation in Language Models

00Perl, RubyMar 29, 202511 months agoCC0-1.0

Similar Papers

Cite this paper

@article{garg2025crosslayer,
  title  = {Cross-Layer Discrete Concept Discovery for Interpreting Language Models},
  author = {Ankur Garg and Xuemin Yu and Hassan Sajjad and Samira Ebrahimi Kahou},
  year   = {2025},
  eprint = {2506.20040},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2506.20040v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2506.20040.svg)](https://codeofpaper.com/paper/2506.20040)

Discussion