fly-wordbrain-rank32 / experiment-config.json
fernandofernandes's picture
Publish trained weights, browser arrays and provenance manifest
3adfbf4 verified
Raw
History Blame Contribute Delete
3.55 kB
{
"schema_version": 1,
"configuration_role": "declarative experiment specification; CLI flags are authoritative",
"training_host": "macm3",
"device": "mps",
"reference_repository": "ngxson/fly-llm-hf",
"reference_revision": "65c677b3d566a2e9793d5f72999cdb441c6c0a9f",
"reference_weights_sha256": "355f06c44d14e38af50e9c801f51839c37a0a56ac4ca016da2be9b3ae6f215ad",
"dataset_path": "data/ngxson-tinystories-v1/dataset.json",
"dataset_sha256": "c1f553263545744786a8811ee6af7ace8c452820bbb99d15140b81625e40b3a8",
"split_stories": {
"train": 1000,
"validation": 100,
"test": 100
},
"initialization": "all learned values from scratch; retain released graph and interface",
"optimizer": {
"name": "AdamW",
"betas": [
0.9,
0.999
],
"epsilon": 1e-08,
"weight_decay": 0.01,
"gradient_clip_norm": 1.0,
"phases": [
{
"epochs": 30,
"input_neuron_lr": 0.001,
"readout_lr": 0.0001
},
{
"epochs": 14,
"input_neuron_lr": 0.0003,
"readout_lr": 3e-05
}
],
"schedule": "cosine to zero separately per phase; preserve Adam moments across phases"
},
"checkpoint_selection": {
"primary": "minimum token-weighted validation cross-entropy",
"secondary": "maximum validation top-1 accuracy; retain actual weights and selection receipt"
},
"claim_scope": "User-selected rank32 decoder comparison against preserved rank64; quality not yet measured",
"environment": {
"PYTORCH_ENABLE_MPS_FALLBACK": "0",
"OMP_NUM_THREADS": "4",
"VECLIB_MAXIMUM_THREADS": "4"
},
"experiment_id": "H32rank32fixed",
"branch": "exp/encoder32-readout32-fixed",
"trainer": "scripts/train_connectorch.py",
"connectorch_revision": "4bbfb645099aeb85bdbf850e1a87cc094769af87",
"groups_path": "data/connectorch-groups-v1/groups.npz",
"groups_sha256": "a07d311cd04126b5e54ea9cb3e8945470af9049bcb8499fb406e3c38d185dd7f",
"trainable_parameters": 2343125,
"training": {
"device": "mps",
"epochs": 30,
"second_epochs": 14,
"batch_size": 8,
"chunk_size": 32,
"seed": 42,
"eval_interval_updates": 100,
"d_embed": 32,
"plasticity": "fixed",
"readout_rank": 32,
"history_length": 8,
"skip_final_test": true
},
"edge_gain_parameters": 0,
"edge_multiplier_bounds": [
1.0,
1.0
],
"neuron_gains": "original unconstrained gain and rec_gain",
"test_policy": "deferred until comparison and final protocol are fixed",
"output_relative": "results/connectorch-rank32-v1/arms/H32rank32fixed",
"readout_parameters": 1613344,
"encoder_parameters": 482816,
"comparison_baseline": "G32rank64fixed; compare common training target budgets and both independent validation selectors",
"readout_architecture": {
"input_neurons": 49393,
"rank": 32,
"vocabulary": 1024,
"bias": false,
"intermediate_activation": null
},
"initialization_note": "Same from-scratch trainer initialization and seed42; preserve encoder and neuron initialization. Rank32 changes readout shapes and initial logit variance relative to rank64; verify rank32-specific gradients and optimizer updates before training.",
"execution_status": "selected by user; separate rank32 native CPU/MPS preflight and optimizer smoke required",
"prerequisites": [
"Confirm idle macm3 and preserved G accepted stop with both winners/latest before H launch",
"Run separate rank32 CPU/MPS parity and eight-update optimizer smoke on macm3 before full H training"
]
}