pre-refactor 041426

This commit is contained in:
rpotter6298
2026-04-14 19:42:16 +02:00
parent eb9eafe715
commit 13290575d5
75 changed files with 8900 additions and 77 deletions
@@ -0,0 +1,87 @@
{
"_notes": [
"Phase 5 — Full HyperTower: bilateral + clinical data + aggregation strategy comparison.",
"Goal: show the effect of a dual CNN + clinical data, and compare ensemble vs fused-head.",
"Best settings from all prior phases: refugelike, iop_ratio_drop_raw, bcd_p05.",
"Best bilateral architecture from phase 4 should be used — update tower-mode accordingly.",
"common_args are prepended to every run's args list.",
"NOTE: update --tower-mode in groups below once phase 4 winner is known.",
"Placeholder uses 'bilateral' — change to 'siamese' if that wins phase 4."
],
"common_args": [
"--eval-mode", "binary",
"--bridge-mode", "fused",
"--epochs", "30",
"--in-memory-cache",
"--augment",
"--tune-binary-threshold",
"--backbone", "refugelike",
"--iop-corr-method", "ratio",
"--iop-drop-raw",
"--exclude-cols", "Axial_Length",
"--output-root", "v3/results"
],
"_common_args_implicit_defaults": {
"--tower-loss-mode": "bcd",
"--bcd-prob": "0.5",
"--warmup-cd-epochs": "40",
"--single-warmup-tower-epochs": "3",
"--single-warmup-fused-epochs": "3",
"--bilat-warmup-tower-epochs": "3",
"--bilat-warmup-fused-epochs": "3"
},
"baseline": {
"run_name": "phase5/single_fused",
"description": "Single-eye + clinical data — phase 3 best config, re-run as direct comparison baseline for phase 5.",
"extra_args": ["--tower-mode", "single"]
},
"groups": [
{
"name": "bilateral_clinical",
"description": "Add clinical data to bilateral architectures.",
"runs": [
{
"run_name": "phase5/ensemble_fused",
"description": "Ensemble (independent OD+OS) + clinical data via fused bridge.",
"extra_args": ["--tower-mode", "ensemble"]
},
{
"run_name": "phase5/bilateral_fused",
"description": "BilateralHT + clinical data — full canonical HyperTower.",
"extra_args": ["--tower-mode", "bilateral"]
},
{
"run_name": "phase5/siamese_fused",
"description": "SiameseHT + clinical data — siamese mean+delta with fused clinical bridge.",
"extra_args": ["--tower-mode", "siamese"]
}
]
},
{
"name": "aggregation",
"description": "Compare patient-level prediction aggregation strategies on top of ensemble.",
"runs": [
{
"run_name": "phase5/ensemble_fused_head",
"description": "Ensemble + clinical data + attention scorer head (Linear(C→1) per eye, softmax-weighted average).",
"extra_args": ["--tower-mode", "ensemble", "--fused-head"]
},
{
"run_name": "phase5/logit_mlp_head",
"description": "Ensemble + clinical data + logit-level MLP head (cat([logit_od, logit_os]) → FC(64) → FC(C)).",
"extra_args": ["--tower-mode", "ensemble", "--fused-head", "--head-type", "logit_mlp"]
},
{
"run_name": "phase5/embedding_mlp_head",
"description": "Ensemble + clinical data + embedding-level MLP head (cat([z_od, z_os]) → FC(256) → FC(C)).",
"extra_args": ["--tower-mode", "ensemble", "--fused-head", "--head-type", "embedding_mlp"]
}
]
}
]
}