summaryrefslogtreecommitdiff
path: root/experiments/c2_calibration_quality_pilot.sh
blob: d1c92915643e61cf69e16bfa29c7d70287ecde8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/usr/bin/env bash
# Development-only C2 screen after the direct-NP diagnosis confirmed that
# feedback amortization is the bottleneck.  Task seed 0 is reused strictly for
# development; task seeds 6--8 are reserved for any independent confirmation.
#
# Frozen choices: context-gated vectorizer, eta=0.03, eta_A=0.01, layerwise
# antithetic calibration every four steps.  Compare K4/K16 at d1/d4 over model
# seeds 0--2.  The analyzer chooses the higher mean d4 endpoint, preferring K4
# whenever it is within one point of the best finite candidate.
# Usage: c2_calibration_quality_pilot.sh <gpu> "<model seeds>"
set -eu

cd "$(dirname "$0")/.."
GPU="${1:?GPU index required}"
MODEL_SEEDS="${2:-0 1 2}"
PYTHON="${PYTHON:-/home/yurenh2/miniconda3/envs/ep_pascal/bin/python3}"

for directions in 4 16; do
  for model_seed in $MODEL_SEEDS; do
    for depth in 1 4; do
      tag="c2_calibdev_v1_tent_l2_w8_context_k${directions}_d${depth}_t0_s${model_seed}"
      out="results/${tag}.json"
      if [ -s "$out" ]; then
        echo "[$tag] exists; skipping"
        continue
      fi
      lesion=0
      if [ "$depth" -eq 4 ]; then
        lesion=0.3333333333333333
      fi
      CUDA_VISIBLE_DEVICES="$GPU" "$PYTHON" experiments/run.py \
        --mode sdil --dataset tentmap --device cuda \
        --depth "$depth" --width 8 --act relu --residual 1 \
        --residual_lesion_fraction "$lesion" \
        --vectorizer_mode context_gated \
        --epochs 80 --batch_size 256 --eta 0.03 --momentum 0.9 \
        --eta_A 0.01 --eta_P 0.002 \
        --pert_sigma 0.01 --pert_every 4 --pert_ndirs "$directions" \
        --pert_mode layerwise \
        --traffic_mode none --nuis_rho 0 \
        --use_residual 1 --learn_A 1 --learn_P 1 --p_neutral 1 \
        --task_train_examples 10000 --task_test_examples 5000 \
        --task_levels 2 --task_n_in 1 --task_seed 0 \
        --val_examples 2000 --split_seed 2027 --eval_split validation --eval_every 0 \
        --diagnostics alignment --diagnostics_schedule final --probe_bs 512 \
        --seed "$model_seed" --log_every 100000 --tag "$tag"
    done
  done
done