CoolFace
Datasetpublic

Prateek-Tiwari10/LMA_phase3_data

LMA Phase 3 — transitive reasoning dataset (Hindi / Nepali) Synthetic transitive-comparison problems over people, in Hindi and Nepali, with chain-of-thought targets. Built for a study of data scaling and domain generalization in small from-scratch language models. The models finetuned on it are at Prateek-Tiwari10/LMA_phase3. Layout manifest_scaling.json machine-readable index of every file below train/{hi,ne}/train_{10,30,50,60}k.jsonl nested… See the full description on the dataset page: https://huggingface.co/datasets/Prateek-Tiwari10/LMA_phase3_data.

sourceHugging Faceapache-2.0updated 6d agoView on Hugging Face
0likes57downloads
Dataset Card

LMA Phase 3 — transitive reasoning dataset (Hindi / Nepali)

Synthetic transitive-comparison problems over people, in Hindi and Nepali, with chain-of-thought targets. Built for a study of data scaling and domain generalization in small from-scratch language models.

The models finetuned on it are at `Prateek-Tiwari10/LMA_phase3`.

Layout

manifest_scaling.json          machine-readable index of every file below
train/{hi,ne}/train_{10,30,50,60}k.jsonl     nested training subsets
validation/{hi,ne}/val_mix.jsonl             train-pool names
validation/{hi,ne}/val_heldout.jsonl         held-out names  <- select on this
test/{hi,ne}/in_domain/*.jsonl               6 slices: trained domains
test/{hi,ne}/cross_domain/<domain>/*.jsonl   16 slices: 4 unseen domains

The four training subsets are strictly nested: the 10k set is a subset of the 30k set, which is a subset of the 50k, which is a subset of the 60k. They are prefixes of one seeded shuffle, so the scaling curve means "the same data plus more", not "four different datasets".

Design

axisin trainingheld out
chain depth2–34, 5, 6
domainheight, age, wealth, weightspeed, strength, diligence, temperature
namestrain pool (3,675 hi / 3,452 ne)disjoint test pool (1,161 / 1,090)

Task families: relation (pure comparisons), numeric (numeric anchor + bound question), mixed (anchor present, relational question). Training mixture 50/30/20.

Every record carries its prompt, completion, answer, true_order, premises, query, depth, domain, task_family and its own derived seed, so any single record can be regenerated in isolation.

Why the name pools are large

An earlier build reused each name ~455 times, and the models learned to recall a memorised name inventory rather than copy names out of the prompt. The pools here are ~17x larger, putting repetitions per name at 7 (10k) to 41 (60k) — far below that regime. Copy-rate is reported per model as a check that the fix held.

Verification

Generated by phase3/data_gen/ (released in the project repo) and gated before release: unique total order per problem (G1), an independent solver agreeing on every answer (G2), queried pairs never stated as premises (G3), sequence lengths inside the 512-token context (G5), byte-identical regeneration from the master seed (G7), and answer extraction recovering 100% of labels (G8).

The two languages are exact structural mirrors — same seed, same code, same premise graphs — so a Hindi-vs-Nepali gap is a language effect, not a data-composition effect.

Known caveats

  • temperature compares the attribute (X का तापमान Y से ज़्यादा है) where the other three unseen domains predicate an adjective (X, Y से तेज़ है), because neither language has a predicate adjective for a person's temperature. It therefore varies frame and domain; report it separately, never averaged into the cross-domain mean.
  • The Nepali cross-domain corpus misses a per-name answer-independence check by 0.023 of a z-unit (one name of 1,090; global chi-square passes at p = 0.309). Disclosed rather than silently re-cut.
  • The unseen-domain phrasings have not had a native-speaker review.