summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
4 daysFix in-word metric: strict (both-sides, 58% random / 0% clean) vs touches ↵Void Agent
(95%); blog/results caveat corrected to the strict discriminator
4 dayssynthetic_pair: add --clean boundary mode (noise token at word starts) + ↵Void Agent
configurable dirs; prep reports in-word fraction
4 daysVerify against Anthropic's official jacobian-lens repo: estimator match, ↵Void Agent
zero frequency in their code+data, add --skip_first/--source_mean mirror mode
4 daysAddress Luna repo review: dynamic repo root (no hardcoded cwd), J-lens ↵Void Agent
correctness test (last-layer identity), auditable fact-check, mechanism narrative fix, softened conditional-predictability claim, README data-prep + artifacts note
4 daysAdd src/stats_decomp.py: reproducible W_U decomposition, p-values, Spearman, ↵Void Agent
synthetic-pair CI (backs results.md numbers)
4 daysDocument n_pairs denominator (exact count) and ctrl_random gradient-mass ↵Void Agent
caveat (comment-only)
4 daysloss_reweight: pass Y to forward for full logits (Karpathy nanoGPT returns ↵Void Agent
last-position logits when targets=None); regression test
4 daysloss_reweight: CPU generators for randint/randperm (CUDA generators ↵Void Agent
unsupported on torch 2.4); cuda-path verified
4 daysAdd causal experiments: synthetic frequency-matched pair (Gemini design) + ↵Void Agent
loss-reweighting (Codex design); jlens_v3 output_dir + last-layer device fix
6 daysjlens_v3: chunk VJP probes (16) to fit K2200 4GB; proxy chunk fix; e2e ↵Void Agent
verified (last-layer cos-sim=1.0)
6 daysAdd faithful J-lens (jlens_v3): W_U-probed residual Jacobian per paper; ↵Void Agent
both-ways comparison vs log-softmax proxy; 3-model adversarial reviews
7 daysGPT-2 J-lens: use local Shakespeare + fix summaryVoid Agent
7 daysGPT-2 Small J-lens: frequency + dimensionality samplingVoid Agent
7 daysAdd Pythia-70m test scriptVoid Agent
7 daysFix: lr→learning_rate in configure_optimizersVoid Agent
7 daysAdd dimensional starvation experiment (d_model=16,32,64,128 vs 384)Void Agent
7 daysAdd controlled frequency ablation experiment (doubled-q)Void Agent
8 daysjlens_v2: fix import path for src/ -> root layoutVoid Agent
8 daysAdd jlens_v2.py: simplified gradient approach for J-lensVoid Agent
8 daysjlens.py: fix hooks — don't detach activations, preserve gradient graphVoid Agent
8 daysjlens.py: fix load_model for dict-format nanoGPT checkpointsVoid Agent
8 daysFix jlens.py import path: src/ -> project rootVoid Agent
8 daysRestructure: nanoGPT at root, custom code in src/Void Agent
- Move model.py, train.py, configurator.py to root for nanoGPT compatibility - data/ and config/ directories at root with Shakespeare dataset prep scripts - src/jlens.py updated to import model from project root - Cleaned up stale src/config/ and duplicate src/ files - Fixed .gitignore: exclude out-shakespeare-char/ instead of raw data dirs
8 daysInitial project setup: J-lens implementation for nanoGPTVoid Agent
- Core J-lens computation (batched per-layer, per-token gradient method) - Project README with background and experiment plan - Sync script for meru Docker container deployment - Upstream nanoGPT model code copied to src/ Architecture: Computes d(log_p(token))/d(residual_stream) averaged over corpus contexts, replicating Anthropic's Jacobian Lens technique.