Add TinyBrainBot-3M-Loop-v2
Adds TinyBrainBot-3M-Loop-v2 (tinybrainbot org): 2,964,481 parameters, trained from scratch, open weights, custom code (trust_remote_code=True).
This follows #260. Two things changed since then.
1. A bug in my model code, which I think explains the 27% on ArithMark-2. The old modeling file ignored attention_mask, so left-padded batches broke it. On the same 600 AM2 items it scored 56.3% right-padded and 35.5% left-padded. It now masks padding and counts positions from each row's first real token, so left and right padding give identical scores (83.2% / 83.2% on those items). The fix is in both repos.
2. The arithmetic now generalizes beyond ArithMark-3's format. I continued the #260 model from its pre-decay checkpoint for 1.5B more tokens, mostly math. The new data comes from my own generators, not from any benchmark's problems or code: bare expressions with order of operations, parentheses, negatives and 2-5 operands; number words; and the existing story problems with a quarter of their numbers in words.
| Benchmark | Score |
|---|---|
| ARC-Easy (acc_norm) | 33.46 |
| ARC-Challenge (acc_norm) | 22.78 |
| HellaSwag (acc_norm) | 27.17 |
| PIQA (acc_norm) | 54.79 |
| ArithMark-3 (length-normalized) | 90.70 |
| ArithMark-2 (official script, acc) | 83.80 |
Intelligence Index: 20.15
Math beyond ArithMark-3, all zero-shot and scored the same way for every model (my runs):
| Model | AM3 | AM3, numbers in words | AM3 as bare equations | AM2 | AM1 |
|---|---|---|---|---|---|
| TinyBrainBot-3M-Loop-v2 | 90.7 | 55.0 | 96.8 | 83.8 | 36.1 |
| TinyBrainBot-3M-Loop (#260) | 89.3 | 27.3 | 88.2 | 58.1 | 29.4 |
| Inferno-Exp-1.7 (394M) | 85.9 | 59.1 | 86.9 | 59.9 | 47.9 |
| GPT-S3-3M | 38.9 | 25.8 | 36.2 | 31.0 | 31.1 |
On ArithMark-1: its answer key mostly evaluates expressions left to right (14 * -17 + -1 * -18 = 4302), while AM2 uses operator precedence (25 + 10 * 5 = 75). This model follows precedence, so it is weak on AM1's longer expressions. I didn't train toward that.
This round aims at general arithmetic across the public benchmarks, not at the private set. If it still drops on HD1, that's useful to know, and I'll move on to general models.
All scores are zero-shot on the full sets: lm-eval 0.4.13 in float32 plus the official ArithMark scripts, re-run on the published Hub copy.
To reproduce:
lm_eval --model hf --model_args pretrained=nkthebass/tinybrainbot-3m-loop-v2,dtype=float32,trust_remote_code=True --tasks arc_easy,arc_challenge,hellaswag,piqa --num_fewshot 0
python bencharithmark-3.py --model nkthebass/tinybrainbot-3m-loop-v2 --dtype float32
python benchmark_arithmark-2.0.py --model nkthebass/tinybrainbot-3m-loop-v2
At this point im just doing everything I can to make sure its truly generalized arithmetic if not then im just going to submit an overall generalist model thats around 12 int score
yeah sry bro, 34%...
yeah sry bro, 34%...
my pr has to have some issues or your eval may have some issues with my model outside of actual benchmarking I may want to ask you some questions in a bit if your able
let me double check
Ran wrong checkpoint, this one actually gets 32%
yeah sry bro, 34%...
my pr has to have some issues or your eval may have some issues with my model outside of actual benchmarking I may want to ask you some questions in a bit if your able
Yeah sure, my discord is same as hf username
yeah sry bro, 34%...
my pr has to have some issues or your eval may have some issues with my model outside of actual benchmarking I may want to ask you some questions in a bit if your able
Yeah sure, my discord is same as hf username
I contacted you on there once you get time to get back to me I have what I think are the most likely issues I can't confirm myself
Can your model solve questions that have a negative answer? Im having a hard time getting it to do so.