GotthardG and Claude Fable 5.1
831367d35d
noise-aware gate, frozen core of unseen frames, and a cycle script for the Spark
...
A paired bootstrap over the 149 unseen gold frames (2026-10-02) showed that a
difference between two models carries about +-0.023 of noise in F1, +-0.018 in
the mask score and +-0.10 in crystal F1, while the gate's tolerance was 0.005.
- tools/gate_stats.py: per-frame counts and a paired bootstrap (pure Python).
- train_run.py: when the baseline's gold predictions exist, the gate requires
the candidate to beat it on F1 or the mask score in 90 % of the draws and
not to lose the other in more than 90 %; the point rule is the fallback and
is always reported (pass_point_rule).
- tools/compare_unseen.py replaces the Spark's ~/fair_gate_all.py: all models
on the frames none trained on, on the frozen core (data/gold/unseen_core.json,
149 frames) and on all unseen frames once the gold set grows, with the
interval and win share against the active model.
- measure_weights.py keeps a version's gate verdict when it re-measures it.
- tools/spark_cycle.sh: gold growth, export, re-measure, train, gate, compare,
push, with what cycles 3 and 4 taught built in.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-10-02 13:25:45 +02:00
jungfrau and Claude Fable 5.1
591f7b0b31
train_run: a run that already has a gate verdict is not trained again without --force
...
The exit code 2 of a failed gate made the cycle script retry and train
2026-10-01_v4-recipeA twice.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-10-02 13:25:45 +02:00
jungfrau
a67e6b8e8e
run 2026-10-01_v4-recipeA: gate_failed; comparison updated
2026-10-02 13:25:45 +02:00
jungfrau
ae889d1255
runs 2026-10-01_v4-recipeA and 2026-10-01_v4-noflip-mask1: exported on dataset/2026-10-01_v4
2026-10-02 13:25:45 +02:00
jungfrau
7688cfa713
dataset: 2026-10-01_v4 (1610 train / 285 val, 493 new pool images)
2026-10-02 13:25:44 +02:00
Duan
a9192406d3
yolo26s-seg-v3-s-640px-2026-10-01
CI / ledger-and-tools (push) Successful in 22s
2026-10-02 10:47:39 +02:00
jungfrau and Claude Fable 5.1
28cbfa889d
measure dir for yolo26n-seg-v3-noflip-mask1-2026-09-30; unseen-frame comparison includes the promoted v3 model
...
CI / ledger-and-tools (push) Successful in 25s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
v1.3.0
2026-09-30 13:56:58 +02:00
jungfrau
2956303ffe
run 2026-09-29_v3-noflip-mask1: promoted; comparison updated
CI / ledger-and-tools (push) Successful in 21s
2026-09-30 13:56:07 +02:00
duan_j
9941d8d456
add ra train script
CI / ledger-and-tools (push) Successful in 17s
2026-09-30 11:45:26 +02:00
Duan
8ff20f9f84
add train script on merlin
CI / ledger-and-tools (push) Successful in 18s
2026-09-30 10:40:32 +02:00
jungfrau and Claude Fable 5.1
f1a945528e
cluster runs on dataset v3: resolution and model-size levers
...
CI / ledger-and-tools (push) Successful in 18s
Three ledger runs for the cluster, exported on dataset/2026-09-29_v3 with the
promoted recipe: nano at 1024 px, small at 640 px, small at 1024 px. A run can
now carry its own training arguments (train_args in run.json, set with
ledger new --kv), which train_run.py applies under any --set; train.sbatch
forwards extra arguments after the run id (e.g. --batch 8). yolo26s-seg.pt
joins the base weights under LFS. slurm/README lists the runs, the questions
they answer and the commands.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-30 07:18:06 +02:00
jungfrau and Claude Fable 5.1
09cb49a3a2
ledger: v3-noflip-mask1 training on the Spark (restarted 07:13 after a memory-starved hang); v2-noflip-mask1 aborted, superseded by v3
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-30 07:16:27 +02:00
jungfrau
d562b94671
run 2026-09-29_v3-recipeA: gate_passed; comparison updated
2026-09-29 23:42:41 +02:00
jungfrau
efba872cdf
runs 2026-09-29_v3-recipeA and 2026-09-29_v3-noflip-mask1: exported on dataset/2026-09-29_v3
2026-09-29 22:41:13 +02:00
jungfrau
a6da2aa4aa
dataset: 2026-09-29_v3 (1181 train / 210 val, 366 new pool images)
dataset/2026-09-29_v3
2026-09-29 22:41:12 +02:00
jungfrau and Claude Fable 5.1
486b077f24
ledger: 2026-09-29_alc-v1-noflip-mask1 deployed at the beamlines (weights only)
...
CI / ledger-and-tools (push) Successful in 18s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-29 20:47:44 +02:00
GotthardG and Claude Fable 5.1
b4d86d3f31
experiments: loop-type classifier, first cross-validated test (broken loops AUROC 0.985)
...
CI / ledger-and-tools (push) Successful in 18s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-29 18:18:28 +02:00
jungfrau
0ec5138409
all models re-measured on the 203-frame gold set; comparison on the unseen frames updated
CI / ledger-and-tools (push) Successful in 18s
2026-09-29 18:00:50 +02:00
GotthardG and Claude Fable 5.1
acaf09483e
slurm: base weights via LFS, and the cluster run 2026-09-29_v2-noflip-mask1 spelled out
...
CI / ledger-and-tools (push) Successful in 17s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-29 17:58:28 +02:00
jungfrau
3d39d40560
run 2026-09-29_v2-recipeA: gate_failed; comparison updated
CI / ledger-and-tools (push) Successful in 18s
2026-09-29 17:58:39 +02:00
jungfrau
ad8ae0fce4
runs 2026-09-29_v2-recipeA and 2026-09-29_v2-noflip-mask1: exported on dataset/2026-09-29_v2
2026-09-29 17:58:39 +02:00
jungfrau
0742281af0
baseline: yolo26n-seg-alc-v1-noflip-mask1-2026-09-29 re-measured on the gold set grown to 203 frames
2026-09-29 17:58:39 +02:00
jungfrau
a6efca1c10
base weights yolo26n-seg.pt under LFS, so a cluster clone needs no download
2026-09-29 17:58:39 +02:00
jungfrau
039cdcba1c
dataset: 2026-09-29_v2 (876 train / 156 val, 315 new pool images)
2026-09-29 17:58:38 +02:00
GotthardG and Claude Fable 5.1
babe197cb2
recipe: no horizontal flip and full-resolution masks by default (winner of the 2026-09-28/29 comparison)
...
CI / ledger-and-tools (push) Successful in 16s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-29 11:13:25 +02:00
jungfrau
e7a02cd1ea
run 2026-09-29_alc-v1-noflip-mask1: promoted (same detection as A, tightest masks); loop switches to it
CI / ledger-and-tools (push) Successful in 18s
v1.2.0
2026-09-29 11:13:44 +02:00
jungfrau
703bfc2e11
run 2026-09-29_alc-v1-noflip-mask1: gate_passed, comparison updated
CI / ledger-and-tools (push) Successful in 18s
2026-09-29 10:37:36 +02:00
jungfrau
d4534fc66c
run 2026-09-29_alc-v1-noflip-mask1: exported (noflip + mask_ratio 1)
2026-09-29 07:31:18 +02:00
GotthardG
308b4c7704
ignore Ultralytics label caches inside datasets
CI / ledger-and-tools (push) Successful in 19s
2026-09-29 00:35:06 +02:00
jungfrau
d2d525487c
experiments 2026-09-28: comparison on the unseen gold frames
CI / ledger-and-tools (push) Successful in 20s
2026-09-29 00:31:03 +02:00
jungfrau
40dc9e54e3
run 2026-09-28_alc-v1-800px: gate_failed
2026-09-29 00:31:02 +02:00
jungfrau
6000995228
run 2026-09-28_alc-v1-overlap: aborted on purpose (nested classes need overlap_mask off)
2026-09-28 23:55:33 +02:00
jungfrau
be6f1d77a7
run 2026-09-28_alc-v1-800px: exported (training size 800 px)
2026-09-28 23:55:28 +02:00
jungfrau
cc868e9856
run 2026-09-28_alc-v1-overlap: training
2026-09-28 23:55:28 +02:00
jungfrau
b5a398ebb9
run 2026-09-28_alc-v1-overlap: exported (overlap_mask on)
2026-09-28 23:54:53 +02:00
jungfrau
13f4d6e3f7
run 2026-09-28_alc-v1-mask1: gate_failed
2026-09-28 23:54:53 +02:00
jungfrau
07716e7b0b
run 2026-09-28_alc-v1-mask1: exported (full-resolution masks (mask_ratio=1))
2026-09-28 21:30:31 +02:00
jungfrau
e84bcfb658
run 2026-09-28_alc-v1-noflip: gate_passed
2026-09-28 21:30:31 +02:00
jungfrau
381680470c
run 2026-09-28_alc-v1-noflip: exported (no horizontal flip (fliplr=0): the camera never shows the pin on the left)
2026-09-28 21:03:25 +02:00
GotthardG and Claude Fable 5.1
1bdf1fc6b1
train_run: --set KEY=VALUE overrides for Ultralytics train arguments, recorded in the ledger
...
CI / ledger-and-tools (push) Successful in 19s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-28 21:01:34 +02:00
jungfrau
ed208bff95
run 2026-09-28_alc-v1-humanonly: gate passed, not promoted (A/B on clean gold: masks no tighter without accepted-unchanged labels, crystal worse)
CI / ledger-and-tools (push) Successful in 17s
2026-09-28 20:44:27 +02:00
jungfrau
84b5092766
run 2026-09-28_alc-v1-humanonly: exported (twin without accepted-unchanged labels)
CI / ledger-and-tools (push) Successful in 19s
2026-09-28 20:01:45 +02:00
jungfrau
8898f4212a
dataset: 2026-09-28_alc-v1-humanonly (476 train / 84 val, 7 new pool images)
dataset/2026-09-28_alc-v1-humanonly
2026-09-28 20:01:45 +02:00
jungfrau
46bfcb7ea5
runs/README.md: render
CI / ledger-and-tools (push) Successful in 18s
2026-09-28 19:18:29 +02:00
jungfrau
7bfd799c26
run 2026-09-28_alc-v1: promoted by the gate after the mask-term fix (F1 +0.045, mask score 0.678 -> 0.710)
CI / ledger-and-tools (push) Successful in 17s
2026-09-28 19:18:27 +02:00
GotthardG and Claude Fable 5.1
3794330fc3
gate: mask term over all gold objects (unmatched = 0), so finding more objects is not punished; tests
...
CI / ledger-and-tools (push) Successful in 18s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-28 19:16:01 +02:00
jungfrau
e8475684d4
run 2026-09-28_alc-v1: gate_failed (F1 +0.045, mask IoU -0.022 vs the deployed model)
CI / ledger-and-tools (push) Successful in 17s
2026-09-28 19:08:07 +02:00
jungfrau
e0b685507f
run 2026-09-28_alc-v1: exported
CI / ledger-and-tools (push) Successful in 18s
2026-09-28 16:51:45 +02:00
jungfrau
71ee34cd17
baseline: gold measure of the deployed yolo26n-seg-overlap-false-2026-04-12
2026-09-28 16:51:45 +02:00
jungfrau
489cc22dc3
dataset: 2026-09-28_alc-v1 (606 train / 108 val, 714 new pool images)
dataset/2026-09-28_alc-v1
2026-09-28 16:49:58 +02:00