add arc1 README
Browse files- arc1/README.md +68 -0
arc1/README.md
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# FPRM — ARC-1-concept (single-z, conv1d)
|
| 2 |
+
|
| 3 |
+
Fixed-Point Tiny Recursive Model (FPRM / FPTRM single-z) trained on **ARC-1-concept**
|
| 4 |
+
(`arc1concept-aug-1000`, the 1000-task augmented build). Evaluated with two attempts it
|
| 5 |
+
reaches **47.5% pass@2**.
|
| 6 |
+
|
| 7 |
+
Original run name: `fptrm_singlez_arc1_lr1e-3_wd0.01_det_a0.75_0.25_iter8` (step_518071 = final).
|
| 8 |
+
|
| 9 |
+
## Results
|
| 10 |
+
|
| 11 |
+
| metric | value |
|
| 12 |
+
|---|---|
|
| 13 |
+
| **test pass@2** | **47.5%** |
|
| 14 |
+
| eval budget | `max_iter_eval=1000` (stepsize_decay 0.9, patience 5) |
|
| 15 |
+
| checkpoint | `step_518071` (final, EMA) |
|
| 16 |
+
|
| 17 |
+
## Architecture
|
| 18 |
+
|
| 19 |
+
| | value |
|
| 20 |
+
|---|---|
|
| 21 |
+
| model | FPTRM single-z (`fp_trm_singlez`) |
|
| 22 |
+
| hidden size / heads / expansion | 512 / 8 / 4 |
|
| 23 |
+
| H-cycles / L-cycles | 3 / 6 |
|
| 24 |
+
| H-layers / L-layers | 0 / 2 |
|
| 25 |
+
| n_backwards_L | 6 |
|
| 26 |
+
| positional enc / puzzle-emb len | RoPE / 16 |
|
| 27 |
+
| halting | fixed-point + Q-head (ACT) |
|
| 28 |
+
| max_iter (train) | 8 (deterministic) |
|
| 29 |
+
| max_iter (eval) | 1000 |
|
| 30 |
+
| stepsize-decay / patience | 0.9 / 5 |
|
| 31 |
+
| fp_thresh | 0.1 |
|
| 32 |
+
| norm type / placement | pre-norm / none |
|
| 33 |
+
| residual scaling | input-independent (α₁, α₂ init = 0.75, 0.25) |
|
| 34 |
+
| conv branch | conv1d (kernel 4) |
|
| 35 |
+
| loss | stablemax cross-entropy, deep supervision, q_loss_coeff 0.5 |
|
| 36 |
+
|
| 37 |
+
## Optimizer
|
| 38 |
+
|
| 39 |
+
| | value |
|
| 40 |
+
|---|---|
|
| 41 |
+
| optimizer | adam_atan2 (β = 0.9, 0.95) |
|
| 42 |
+
| learning rate | 1e-3 (constant, no warm-up) |
|
| 43 |
+
| weight decay | 0.01 |
|
| 44 |
+
| **puzzle-emb LR** | **1e-2 (decoupled)** |
|
| 45 |
+
| puzzle-emb WD | 1.0 |
|
| 46 |
+
| batch size | 768 |
|
| 47 |
+
| epochs | 100000 |
|
| 48 |
+
| EMA | enabled (rate 0.999) |
|
| 49 |
+
| seed | 0 |
|
| 50 |
+
|
| 51 |
+
## Files
|
| 52 |
+
|
| 53 |
+
- `step_<N>` — EMA-averaged eval checkpoints (~1.7 GB each), N = 51807 … **518071** (final).
|
| 54 |
+
Because `ema=True`, `step_<N>` is the EMA copy — **these are the weights to load for
|
| 55 |
+
inference/eval**.
|
| 56 |
+
- `all_config.yaml` — the exact training configuration.
|
| 57 |
+
- `fp_trm_singlez.py`, `losses.py` — model and loss source for this checkpoint.
|
| 58 |
+
- `evaluator_ARC_step_0/submission.json` — ARC evaluation submission (predictions) for this run.
|
| 59 |
+
|
| 60 |
+
> Note: this folder ships **eval checkpoints only** — the `step_<N>_train_state.pt` training
|
| 61 |
+
> states (optimizer + live weights, for resuming) are not included.
|
| 62 |
+
|
| 63 |
+
## Reproduce the 47.5%
|
| 64 |
+
|
| 65 |
+
1. **Train** with `all_config.yaml` (FPTRM single-z, conv1d/k4, pre-norm / placement none,
|
| 66 |
+
input-independent residual scaling, `adam_atan2`, lr 1e-3, decoupled puzzle-emb LR 1e-2,
|
| 67 |
+
100000 epochs) on the **`arc1concept-aug-1000`** build. Produces `step_518071`.
|
| 68 |
+
2. **Eval at `max_iter=1000`** on the final EMA checkpoint and report **pass@2** (two attempts).
|