sparse-readout-prism / manifest.json
hematteo's picture
Add Qwen3.5-2B seed-variation replicates (basis-stability appendix) with config/metrics sidecars; update manifest and README
9b4e00a verified
Raw History Blame Contribute Delete
14.1 kB
{
"repo": "hematteo/sparse-readout-prism",
"generated": "2026-09-03",
"paper": {
"title": "Sparse Readout Prism: Explaining Logit-Lens Scores in Features Instead of Tokens",
"arxiv": "2609.01936",
"url": "https://arxiv.org/abs/2609.01936"
},
"code": {
"repo": "https://github.com/hematteo/sparse-readout-prism",
"version": "0.2.2",
"registry": "configs/registries/exp2_selected_sae_checkpoints.yaml",
"loader": "sparse_readout_prism.load_factorizer"
},
"file_layout": "<model>/<operating_point>/checkpoint.pt",
"metrics": {
"rowEV": "row-centered explained variance of the reconstructed unembedding rows (held-out)",
"top1": "argmax agreement of the reconstructed readout with the original on held-out hidden states",
"KL_bits": "readout KL in bits; Gemma values computed through the final-logit softcap"
},
"layouts": {
"config": {
"keys": [
"model_state_dict",
"config"
],
"factorizer_block": "config.factorizer",
"embeds_row_stats": false,
"embeds_metrics": false,
"note": "config holds the full training config (data, factorizer, training, run)"
},
"flat": {
"keys": [
"model_state_dict",
"factorizer",
"evaluation",
"row_mean",
"row_norms",
"row_token_ids",
"metrics"
],
"factorizer_block": "factorizer",
"embeds_row_stats": true,
"embeds_metrics": true,
"note": "row_mean/row_norms are the preprocessing pinned at training time; metrics is the held-out eval"
}
},
"preprocessing": "rows centered then L2-normalized; the paper's analysis runs center on the live full-vocabulary mean of W_U (preprocess_rows(W_U); --centering live), training centered on the text-token rows",
"checkpoints": [
{
"id": "gemma_e2b_k128",
"path": "gemma-4-e2b/k128_16x/checkpoint.pt",
"model": "Gemma-4-E2B",
"base_model": "google/gemma-4-E2B-it",
"width": "16x",
"d_features": 24576,
"d_model": 1536,
"k": 128,
"rowEV": 0.714,
"top1": 0.623,
"KL_bits": 1.94,
"size_bytes": 302091735,
"layout": "config",
"metrics_source": "paper Appendix C (selection table), softcap-correct top-1/KL"
},
{
"id": "gemma_e2b_k256",
"path": "gemma-4-e2b/k256_32x/checkpoint.pt",
"model": "Gemma-4-E2B",
"base_model": "google/gemma-4-E2B-it",
"width": "32x",
"d_features": 49152,
"d_model": 1536,
"k": 256,
"rowEV": 0.834,
"top1": 0.333,
"KL_bits": 6.37,
"size_bytes": 604179927,
"layout": "config",
"metrics_source": "paper Appendix C (selection table), softcap-correct top-1/KL"
},
{
"id": "gemma_e4b_k128",
"path": "gemma-4-e4b/k128_16x/checkpoint.pt",
"model": "Gemma-4-E4B",
"base_model": "google/gemma-4-E4B-it",
"width": "16x",
"d_features": 40960,
"d_model": 2560,
"k": 128,
"rowEV": 0.693,
"top1": 0.669,
"KL_bits": 1.82,
"size_bytes": 839028183,
"layout": "config",
"metrics_source": "paper Appendix C (selection table), softcap-correct top-1/KL"
},
{
"id": "gemma_e4b_k256",
"path": "gemma-4-e4b/k256_32x/checkpoint.pt",
"model": "Gemma-4-E4B",
"base_model": "google/gemma-4-E4B-it",
"width": "32x",
"d_features": 81920,
"d_model": 2560,
"k": 256,
"rowEV": 0.827,
"top1": 0.736,
"KL_bits": 1.22,
"size_bytes": 1678052823,
"layout": "config",
"metrics_source": "paper Appendix C (selection table), softcap-correct top-1/KL"
},
{
"id": "ministral8b_k128",
"path": "ministral-3-8b/k128_16x/checkpoint.pt",
"model": "Ministral-3-8B-Base",
"base_model": "mistralai/Ministral-3-8B-Base-2512",
"width": "16x",
"d_features": 65536,
"d_model": 4096,
"k": 128,
"rowEV": 0.806,
"top1": 0.885,
"KL_bits": 0.13,
"size_bytes": 2149339577,
"layout": "flat",
"metrics_source": "checkpoint['metrics'] (held-out eval); paper Appendix E"
},
{
"id": "ministral8b_k256",
"path": "ministral-3-8b/k256_32x/checkpoint.pt",
"model": "Ministral-3-8B-Base",
"base_model": "mistralai/Ministral-3-8B-Base-2512",
"width": "32x",
"d_features": 131072,
"d_model": 4096,
"k": 256,
"rowEV": 0.888,
"top1": 0.904,
"KL_bits": 0.087,
"size_bytes": 4297085449,
"layout": "flat",
"metrics_source": "checkpoint['metrics'] (held-out eval); paper Appendix E"
},
{
"id": "qwen0p8b_k128",
"path": "qwen3.5-0.8b/k128_16x/checkpoint.pt",
"model": "Qwen3.5-0.8B",
"base_model": "Qwen/Qwen3.5-0.8B",
"width": "16x",
"d_features": 16384,
"d_model": 1024,
"k": 128,
"rowEV": 0.76,
"top1": 0.844,
"KL_bits": 0.277,
"size_bytes": 134286807,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "qwen0p8b_k256",
"path": "qwen3.5-0.8b/k256_32x/checkpoint.pt",
"model": "Qwen3.5-0.8B",
"base_model": "Qwen/Qwen3.5-0.8B",
"width": "32x",
"d_features": 32768,
"d_model": 1024,
"k": 256,
"rowEV": 0.877,
"top1": 0.891,
"KL_bits": 0.135,
"size_bytes": 268570071,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "qwen2b_k128",
"path": "qwen3.5-2b/k128_16x/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"width": "16x",
"d_features": 32768,
"d_model": 2048,
"k": 128,
"rowEV": 0.712,
"top1": 0.858,
"KL_bits": 0.261,
"size_bytes": 537005527,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "qwen2b_k256",
"path": "qwen3.5-2b/k256_32x/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"width": "32x",
"d_features": 65536,
"d_model": 2048,
"k": 256,
"rowEV": 0.847,
"top1": 0.887,
"KL_bits": 0.136,
"size_bytes": 1074007511,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "qwen9b_k128_fixed",
"path": "qwen3.5-9b/k128_8x/checkpoint.pt",
"model": "Qwen3.5-9B",
"base_model": "Qwen/Qwen3.5-9B",
"width": "8x",
"d_features": 32768,
"d_model": 4096,
"k": 128,
"rowEV": 0.621,
"top1": 0.846,
"KL_bits": 0.296,
"size_bytes": 1073876183,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "qwen9b_k256_16x",
"path": "qwen3.5-9b/k256_16x/checkpoint.pt",
"model": "Qwen3.5-9B",
"base_model": "Qwen/Qwen3.5-9B",
"width": "16x",
"d_features": 65536,
"d_model": 4096,
"k": 256,
"rowEV": 0.761,
"top1": 0.874,
"KL_bits": 0.167,
"size_bytes": 2147749079,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "qwen9b_k256_32x",
"path": "qwen3.5-9b/k256_32x/checkpoint.pt",
"model": "Qwen3.5-9B",
"base_model": "Qwen/Qwen3.5-9B",
"width": "32x",
"d_features": 131072,
"d_model": 4096,
"k": 256,
"rowEV": 0.857,
"top1": 0.9,
"KL_bits": 0.105,
"size_bytes": 4295495171,
"layout": "config",
"metrics_source": "paper Appendix C (selection table); the 9B 8x point is in Appendices D and F"
},
{
"id": "r1dist_llama8b_k128",
"path": "r1-distill-llama-8b/k128_16x/checkpoint.pt",
"model": "R1-Distill-Llama-8B",
"base_model": "deepseek-ai/DeepSeek-R1-Distill-Llama-8B",
"width": "16x",
"d_features": 65536,
"d_model": 4096,
"k": 128,
"rowEV": 0.796,
"top1": 0.725,
"KL_bits": 0.536,
"size_bytes": 2149305849,
"layout": "flat",
"metrics_source": "checkpoint['metrics'] (held-out eval); paper Appendix E"
},
{
"id": "r1dist_llama8b_k256",
"path": "r1-distill-llama-8b/k256_32x/checkpoint.pt",
"model": "R1-Distill-Llama-8B",
"base_model": "deepseek-ai/DeepSeek-R1-Distill-Llama-8B",
"width": "32x",
"d_features": 131072,
"d_model": 4096,
"k": 256,
"rowEV": 0.888,
"top1": 0.754,
"KL_bits": 0.434,
"size_bytes": 4297051721,
"layout": "flat",
"metrics_source": "checkpoint['metrics'] (held-out eval); paper Appendix E"
},
{
"id": "r1dist_qwen7b_k128",
"path": "r1-distill-qwen-7b/k128_16x/checkpoint.pt",
"model": "R1-Distill-Qwen-7B",
"base_model": "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
"width": "16x",
"d_features": 57344,
"d_model": 3584,
"k": 128,
"rowEV": 0.709,
"top1": 0.695,
"KL_bits": 0.777,
"size_bytes": 1646240185,
"layout": "flat",
"metrics_source": "checkpoint['metrics'] (held-out eval); paper Appendix E"
},
{
"id": "r1dist_qwen7b_k256",
"path": "r1-distill-qwen-7b/k256_32x/checkpoint.pt",
"model": "R1-Distill-Qwen-7B",
"base_model": "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
"width": "32x",
"d_features": 114688,
"d_model": 3584,
"k": 256,
"rowEV": 0.844,
"top1": 0.76,
"KL_bits": 0.489,
"size_bytes": 3290636793,
"layout": "flat",
"metrics_source": "checkpoint['metrics'] (held-out eval); paper Appendix E"
}
],
"replicates": {
"note": "Seed-variation family used end to end by the paper's basis-stability appendix (cross-seed stability, feature-group matching, leave-one-out core recovery). Three independently seeded dictionaries per width, trained on Qwen3.5-2B under the seed-variation preprocessing recipe. The paper says this recipe differs from the one behind the released qwen3.5-2b/k128_16x and k256_32x dictionaries, so seed 0 here is NOT the released checkpoint; no table in that appendix mixes the two families.",
"checkpoints": [
{
"id": "qwen2b_k128_16x_seedvar_s0",
"path": "qwen3.5-2b/k128_16x_seedvar_s0/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"family": "seed_variation",
"seed": 0,
"width": "16x",
"d_features": 32768,
"d_model": 2048,
"k": 128,
"rowEV": 0.744,
"top1": 0.805,
"KL_bits": 0.286,
"steps": 15000,
"size_bytes": 539994553,
"sha256": "cd5462a450f2696c8353a3b03e2b222ee57f8e0c912473b8850f71a6eada99ed",
"layout": "config",
"metrics_source": "metrics.json alongside the checkpoint (held-out eval at training time)",
"sidecars": [
"qwen3.5-2b/k128_16x_seedvar_s0/config.yaml",
"qwen3.5-2b/k128_16x_seedvar_s0/metrics.json"
]
},
{
"id": "qwen2b_k128_16x_seedvar_s1",
"path": "qwen3.5-2b/k128_16x_seedvar_s1/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"family": "seed_variation",
"seed": 1,
"width": "16x",
"d_features": 32768,
"d_model": 2048,
"k": 128,
"rowEV": 0.745,
"top1": 0.805,
"KL_bits": 0.291,
"steps": 20000,
"size_bytes": 539994553,
"sha256": "450c99237a3252084f43d12c6eda1f41a4eaf56ac2391ccbd9d8c9c34d95b584",
"layout": "config",
"metrics_source": "metrics.json alongside the checkpoint (held-out eval at training time)",
"sidecars": [
"qwen3.5-2b/k128_16x_seedvar_s1/config.yaml",
"qwen3.5-2b/k128_16x_seedvar_s1/metrics.json"
]
},
{
"id": "qwen2b_k128_16x_seedvar_s2",
"path": "qwen3.5-2b/k128_16x_seedvar_s2/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"family": "seed_variation",
"seed": 2,
"width": "16x",
"d_features": 32768,
"d_model": 2048,
"k": 128,
"rowEV": 0.744,
"top1": 0.816,
"KL_bits": 0.293,
"steps": 20000,
"size_bytes": 539994553,
"sha256": "485432a34dd5b9a135487d5358cedd319197489dc1d493bcf801ce0e55ec80aa",
"layout": "config",
"metrics_source": "metrics.json alongside the checkpoint (held-out eval at training time)",
"sidecars": [
"qwen3.5-2b/k128_16x_seedvar_s2/config.yaml",
"qwen3.5-2b/k128_16x_seedvar_s2/metrics.json"
]
},
{
"id": "qwen2b_k256_32x_seedvar_s0",
"path": "qwen3.5-2b/k256_32x_seedvar_s0/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"family": "seed_variation",
"seed": 0,
"width": "32x",
"d_features": 65536,
"d_model": 2048,
"k": 256,
"rowEV": 0.824,
"top1": 0.807,
"KL_bits": 0.202,
"steps": 17500,
"size_bytes": 1076996537,
"sha256": "81cad1148e0ed0d9065691b5fec2dc033f51a5374f8b23d0c1c01be830d653e7",
"layout": "config",
"metrics_source": "metrics.json alongside the checkpoint (held-out eval at training time)",
"sidecars": [
"qwen3.5-2b/k256_32x_seedvar_s0/config.yaml",
"qwen3.5-2b/k256_32x_seedvar_s0/metrics.json"
]
},
{
"id": "qwen2b_k256_32x_seedvar_s1",
"path": "qwen3.5-2b/k256_32x_seedvar_s1/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"family": "seed_variation",
"seed": 1,
"width": "32x",
"d_features": 65536,
"d_model": 2048,
"k": 256,
"rowEV": 0.823,
"top1": 0.822,
"KL_bits": 0.222,
"steps": 17500,
"size_bytes": 1076996537,
"sha256": "f0ce4816b260a25e23834472ae76b3c4a01b1bcb18a681a21f16349aa6cd9acf",
"layout": "config",
"metrics_source": "metrics.json alongside the checkpoint (held-out eval at training time)",
"sidecars": [
"qwen3.5-2b/k256_32x_seedvar_s1/config.yaml",
"qwen3.5-2b/k256_32x_seedvar_s1/metrics.json"
]
},
{
"id": "qwen2b_k256_32x_seedvar_s2",
"path": "qwen3.5-2b/k256_32x_seedvar_s2/checkpoint.pt",
"model": "Qwen3.5-2B",
"base_model": "Qwen/Qwen3.5-2B",
"family": "seed_variation",
"seed": 2,
"width": "32x",
"d_features": 65536,
"d_model": 2048,
"k": 256,
"rowEV": 0.826,
"top1": 0.848,
"KL_bits": 0.194,
"steps": 17500,
"size_bytes": 1076996537,
"sha256": "c30f537c387c66f5a92fa5321aef38278d69ede42b9f78254e288160735d7a57",
"layout": "config",
"metrics_source": "metrics.json alongside the checkpoint (held-out eval at training time)",
"sidecars": [
"qwen3.5-2b/k256_32x_seedvar_s2/config.yaml",
"qwen3.5-2b/k256_32x_seedvar_s2/metrics.json"
]
}
]
}
}