[ { "_note": "Hypothesis 1 — ImageNet pretraining is OOD for fundus; freezing low-level filters helps. Keep tiny but freeze 60% of stages (stem + first 2 of 4 stages).", "run_name": "experiments/convnext/baseline_convnextv2_tiny_freeze60", "reps": 3, "tower_overrides": { "img": { "args": { "backbone": "convnextv2_tiny", "freeze_ratio": 0.6 } } } }, { "_note": "Hypothesis 2 — model too big for 330 patients; try the smallest variant.", "run_name": "experiments/convnext/baseline_convnextv2_atto", "reps": 3, "tower_overrides": { "img": { "args": { "backbone": "convnextv2_atto", "freeze_ratio": 0.0 } } } }, { "_note": "Hypothesis 3 — LR too high for the bigger model from ImageNet init; halve LR with the tiny backbone unfrozen.", "run_name": "experiments/convnext/baseline_convnextv2_tiny_lr5e5", "reps": 3, "overrides": { "training": { "lr": 5e-5 } }, "tower_overrides": { "img": { "args": { "backbone": "convnextv2_tiny", "freeze_ratio": 0.0 } } } } ]