rdiehlmartinez commited on
Commit
546d4d8
·
1 Parent(s): 0833afa

pico-decoder-small-1 trained to 100k steps

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. README.md +56 -0
  2. config.json +22 -0
  3. eval_results/step_0.json +1 -0
  4. eval_results/step_1000.json +1 -0
  5. eval_results/step_10000.json +1 -0
  6. eval_results/step_100000.json +1 -0
  7. eval_results/step_11000.json +1 -0
  8. eval_results/step_12000.json +1 -0
  9. eval_results/step_13000.json +1 -0
  10. eval_results/step_14000.json +1 -0
  11. eval_results/step_15000.json +1 -0
  12. eval_results/step_16000.json +1 -0
  13. eval_results/step_17000.json +1 -0
  14. eval_results/step_18000.json +1 -0
  15. eval_results/step_19000.json +1 -0
  16. eval_results/step_2000.json +1 -0
  17. eval_results/step_20000.json +1 -0
  18. eval_results/step_21000.json +1 -0
  19. eval_results/step_22000.json +1 -0
  20. eval_results/step_23000.json +1 -0
  21. eval_results/step_24000.json +1 -0
  22. eval_results/step_25000.json +1 -0
  23. eval_results/step_26000.json +1 -0
  24. eval_results/step_27000.json +1 -0
  25. eval_results/step_28000.json +1 -0
  26. eval_results/step_29000.json +1 -0
  27. eval_results/step_3000.json +1 -0
  28. eval_results/step_30000.json +1 -0
  29. eval_results/step_31000.json +1 -0
  30. eval_results/step_32000.json +1 -0
  31. eval_results/step_33000.json +1 -0
  32. eval_results/step_34000.json +1 -0
  33. eval_results/step_35000.json +1 -0
  34. eval_results/step_36000.json +1 -0
  35. eval_results/step_37000.json +1 -0
  36. eval_results/step_38000.json +1 -0
  37. eval_results/step_39000.json +1 -0
  38. eval_results/step_4000.json +1 -0
  39. eval_results/step_40000.json +1 -0
  40. eval_results/step_41000.json +1 -0
  41. eval_results/step_42000.json +1 -0
  42. eval_results/step_43000.json +1 -0
  43. eval_results/step_44000.json +1 -0
  44. eval_results/step_45000.json +1 -0
  45. eval_results/step_46000.json +1 -0
  46. eval_results/step_47000.json +1 -0
  47. eval_results/step_48000.json +1 -0
  48. eval_results/step_49000.json +1 -0
  49. eval_results/step_5000.json +1 -0
  50. eval_results/step_50000.json +1 -0
README.md ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ datasets:
3
+ - pico-lm/pretokenized-dolma
4
+ language:
5
+ - en
6
+ license: apache-2.0
7
+ metrics:
8
+ - pico-lm/perplexity
9
+ pipeline_tag: text-generation
10
+ ---
11
+
12
+ # Pico Decoder Small
13
+
14
+ **pico-decoder-small** is a 65M parameter model in the `pico-decoder` suite — a lightweight, LLaMA-style decoder-only transformer trained from scratch using [`pico-train`](https://github.com/pico-lm/pico-train). It is designed for transparent and reproducible research into the learning dynamics of language models, and is fully compatible with the `pico-analyze` toolkit for detailed interpretability analysis.
15
+
16
+ > NOTE: The `pico-decoder-small-1` branch contains the full commit history for the training run.
17
+
18
+ ## 🔧 Model Details
19
+
20
+ | Field | Value |
21
+ |---------------------|------------------------------------|
22
+ | **Architecture** | Decoder-only transformer (LLaMA-style) |
23
+ | **Parameters** | 65M |
24
+ | **Layers** | 12 |
25
+ | **Hidden Size** | 384 |
26
+ | **Feed Foward Size** | 1536 |
27
+ | **Attention Heads** | 12 |
28
+ | **Key/Value Heads** | 4 |
29
+
30
+ ## 📚 Training
31
+
32
+ - **Dataset**: [`pretokenized-dolma`](https://huggingface.co/datasets/pico-lm/pretokenized-dolma), English-only
33
+ - **Training steps**: 200,000
34
+ - **Batch size**: 1024
35
+ - **Sequence length**: 2048
36
+ - **Optimizer**: AdamW
37
+ - **Learning rate schedule**: Linear decay with warmup
38
+ - **Compute**: 16 A100-SXM4-80GB GPUs
39
+
40
+ ## 📈 Evaluation and Analysis
41
+
42
+ This model supports fine-grained analysis using [`pico-analyze`](https://github.com/pico-lm/pico-analyze). This tool enables researchers to understand how learning unfolds over training, even at modest scales.
43
+
44
+ We also evaluate perplexity of the model on the [`pico-paloma-tinsy`](https://huggingface.co/datasets/pico-lm/pretokenized-paloma-tinsy) dataset.
45
+
46
+ ## 📄 Citation
47
+
48
+ If you use `pico-small` or any other `pico-decoder` model in your research, please cite:
49
+
50
+ ```bibtex
51
+ @software{pico2025,
52
+ author = {Diehl Martinez, Richard},
53
+ title = {Pico: A Lightweight Framework for Studying Language Model Learning Dynamics},
54
+ year = {2025},
55
+ url = {https://github.com/pico-lm}
56
+ }
config.json ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "activation_hidden_dim": 1536,
3
+ "architectures": [
4
+ "PicoDecoderHF"
5
+ ],
6
+ "attention_n_heads": 12,
7
+ "attention_n_kv_heads": 4,
8
+ "auto_map": {
9
+ "AutoConfig": "pico_decoder.PicoDecoderHFConfig",
10
+ "AutoModelForCausalLM": "pico_decoder.PicoDecoderHF"
11
+ },
12
+ "batch_size": 1024,
13
+ "d_model": 384,
14
+ "max_seq_len": 2048,
15
+ "model_type": "pico_decoder",
16
+ "n_layers": 12,
17
+ "norm_eps": 1e-06,
18
+ "position_emb_theta": 10000.0,
19
+ "torch_dtype": "float32",
20
+ "transformers_version": "4.48.3",
21
+ "vocab_size": 50304
22
+ }
eval_results/step_0.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 59235.520549324916}
eval_results/step_1000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 792.1833685393118}
eval_results/step_10000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 65.94262431332459}
eval_results/step_100000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 43.36404886320493}
eval_results/step_11000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 64.34633452908918}
eval_results/step_12000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 62.59192442304166}
eval_results/step_13000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 61.176598006341514}
eval_results/step_14000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 60.127189135634524}
eval_results/step_15000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 59.05735223143773}
eval_results/step_16000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 58.34294593874171}
eval_results/step_17000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 57.50681012357984}
eval_results/step_18000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 56.75063220922955}
eval_results/step_19000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 56.22409683063055}
eval_results/step_2000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 430.54463134327}
eval_results/step_20000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 55.70834681912997}
eval_results/step_21000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 55.09185880999947}
eval_results/step_22000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 54.68077409824012}
eval_results/step_23000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 54.099016925931394}
eval_results/step_24000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 53.69616283332014}
eval_results/step_25000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 53.325224398403634}
eval_results/step_26000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 52.88207766685752}
eval_results/step_27000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 52.41606502532959}
eval_results/step_28000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 52.10107550388429}
eval_results/step_29000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 51.815027207946116}
eval_results/step_3000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 251.38611673594352}
eval_results/step_30000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 51.49154515075351}
eval_results/step_31000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 51.0821376223182}
eval_results/step_32000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 50.92298436588526}
eval_results/step_33000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 50.645718124851534}
eval_results/step_34000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 50.21418930977479}
eval_results/step_35000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 50.065432297311176}
eval_results/step_36000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 49.722077291269336}
eval_results/step_37000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 49.635000252972915}
eval_results/step_38000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 49.49005253331586}
eval_results/step_39000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 49.15703350899527}
eval_results/step_4000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 140.36928879923937}
eval_results/step_40000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.99870226881645}
eval_results/step_41000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.77364599197999}
eval_results/step_42000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.68095632488304}
eval_results/step_43000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.350308783959846}
eval_results/step_44000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.223110499282335}
eval_results/step_45000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.15096046201859}
eval_results/step_46000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 48.06621652671269}
eval_results/step_47000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 47.83704719643144}
eval_results/step_48000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 47.751127573505094}
eval_results/step_49000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 47.55591929922536}
eval_results/step_5000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 89.37810033688562}
eval_results/step_50000.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"paloma": 47.414057051013984}