diff --git a/conf/gtauav_baseline.gin b/conf/gtauav_baseline.gin index 26ae7e3..7646f1b 100644 --- a/conf/gtauav_baseline.gin +++ b/conf/gtauav_baseline.gin @@ -13,9 +13,16 @@ include 'conf/gtauav_balanced.gin' TrainConfigGTAUAV.baseline_mode = True -TrainConfigGTAUAV.output_dir = "out/gtauav/baseline_mutex" +TrainConfigGTAUAV.output_dir = "out/gtauav/baseline_inbatch" TrainConfigGTAUAV.use_gradcam = False # ---- Diagnostic overrides ---- -TrainConfigGTAUAV.sampler_type = "mutex" # was "dss" — disable hard-batch construction -InfoNCELoss.hard_mining_k = 0 # was 512 — use full queue without per-query top-K +# Previous mutex-only run still collapsed at epoch 1 (val loss locked at log(8)). +# Hypothesis refined: the MoCo-style queue stays stale because we have no +# momentum encoder, and with reduced trainable surface (MONA-12) the model +# can't reconcile fresh representations against 4096 stale negatives — +# mode collapse. Disable the queue entirely so InfoNCE sees only the 8 +# fresh in-batch negatives, matching the OLD run's effective setup. +TrainConfigGTAUAV.sampler_type = "mutex" # was "dss" +TrainConfigGTAUAV.neg_bank_size = 0 # was 4096 — disable MoCo queue (no momentum encoder) +InfoNCELoss.hard_mining_k = 0 # was 512 — irrelevant when queue is empty