--- language: en library_name: transformers tags: - memorization - capacity - gpt2 - random-data license: mit --- # Tiny GPT memorization checkpoint (2m, near-capacity / saturation boundary) From an exploratory tiny-scale replication of [How much do language models memorize?](https://huggingface.co/papers/2505.24832). - Architecture: GPT-2 (transformers), trained from scratch. - Parameters: 1,871,056 (non-embedding 1,496,352). - Vocab: 2048 data tokens (uniform random) + BOS = 2049 model vocab. - Sequence length: 64 (paper S=64). - Dataset: 10000 sequences, 640,000 data tokens, dataset entropy 7,040,000 bits (7.040 Mbits). - Trained 7330 steps, AdamW, bfloat16, lr 0.002, batch 512. - Result: train loss 3.7714 bits/tok, held loss 18.0931, memorized 4,626,295 bits = **2.473 bits/parameter**. This is the **near-capacity (saturation-boundary)** run for this model size. Below- and above-capacity checkpoints for the same architecture are published as `state.pt` files in the results dataset `evalstate/tiny-memorization-results`. Load with: ```python from transformers import GPT2LMHeadModel model = GPT2LMHeadModel.from_pretrained("evalstate/tiny-gpt-memorization-2m") ``` Findings are scoped as an exploratory tiny-scale check (three architectures), NOT a universal scaling law.