Skip to content

Dead Latents

Sam edited this page Nov 26, 2025 · 6 revisions

I have a bunch of dead latents. I'm training width 16K SAEs on DINOv3 ViT-L activations on FishVista (very homogenous images). I am comparing TopK and ReLU + L1 sparsity penalties and I realized that many, many of my latents are dead.

Here are graphs of the number of dead latents during training, grouped by the relative sparsity penalty:

ReLU + L1 sparsity penalty dead units throughout training on FishVista. ReLU + L1 sparsity penalty dead units throughout training on FishVista.

TopK dead units throughout training on FishVista. TopK dead units throughout training on FishVista.

My options, based on prior work, include:

  1. Better W_dec/enc initialization (datapoint initialization, see https://transformer-circuits.pub/2025/october-update/index.html#data-point-init)
  2. [maybe] Better b_enc initialization (according to Anthropic, see https://transformer-circuits.pub/2025/january-update/index.html#DL )
  3. [maybe] Gao et al's 'AuxK' loss
  4. [maybe] Anthropic's pre-act loss (again, see https://transformer-circuits.pub/2025/january-update/index.html#DL)

Starting with (1) seems super easy and reasonable. Doing (2) seems like I need to do a bunch of forward passes, which seems bad. 3 and 4 seem reasonable as well, but I don't really like throwing additional loss terms into my objective

Clone this wiki locally