claude-opus-4-8
nano-gpt-data-curation — graded by the task's verifier against a measured baseline.
- backend
- modal
- variant
- claude claude-opus-4-8
- metric
- held-out multi-domain perplexity
- actions
- 65
- duration
- 35m
- recorded
- 2026-08-04
run iddclm-nano-curation__awciJhD
Score
Summary
I curated the pretraining corpus and delivered all three artifacts. Final result: dev perplexity 319.2 vs. the random baseline of 485.4 — a 34% reduction.
What I did
- Decoded the disclosed dev target and found it is exactly 25% encyclopedic (WikiText) / 50% high-quality prose+news / 25% technical Q&A (StackExchange HTML), in contiguous blocks.
- Tokenized the full 200M-token pool (GPT-2) once and cached it.
- Built per-register DSIR importance selection (
curate.py): split the target into registers, built a bag-of-{unigram,bigram} log-ratio model per register vs. the pool background, scored every pool doc, removed near-duplicates (the pool has many) and boilerplate (directory-listings etc.), and interleaved buckets so the 12M-token training prefix reproduces the target's register mix.
Key empirical finding (drives the claim)
| selection | dev PPL |
|---|---|
| random baseline | 485.4 |
| register-balanced (submitted) | 319.2 |
| unbalanced "quality-only" control | 571.9 (worse than random!) |
The unbalanced control uses strictly higher per-doc match scores yet loses badly, because it starves the Q&A register — measurable before training as a spike in the training→QA unigram cross-entropy (8.10 → 9.25). That data-only diagnostic rank-orders the models' perplexity exactly (8.00 < 8.20 < 8.38 ↔ 319 < 485 < 572). So register coverage, not per-document quality, is the dominant lever — which is the mechanism documented in claim.md.
I also confirmed the pool imposes hard ceilings: zero WikiText-format docs (approximated with encyclopedic-content prose) and only ~2.5M Q&A tokens (I saturate them); pushing beyond the natural ~15% QA didn't help.
Deliverables
/workspace/submission/selection.json— 18,927 priority-ordered ids (valid: unique, in-range, fills 12M with margin)/workspace/submission/curate.py— verified to reproduce the exact selection standalone from a stated criterion/workspace/claim.md— Hypothesis / Mechanism (with the confirmed non-perplexity observable) / Falsification / Transfer