AsianPlayer/TriDrive / code /eval /run_branch_arch_evals.sh
AsianPlayer's picture
download
raw
2.95 kB
#!/usr/bin/env bash
# cwm3/eval/run_branch_arch_evals.sh — GPU-baselines B (branch-architecture ablation) pairs, CPU. bash eval/run_branch_arch_evals.sh "0 1 2" [render=1]
# Per seed k and regime (idempotent on results/paired_compare.csv tags):
# U (K4 tools, causal-v2 driver populations): Barch_s<k>_utcn_vs_ugru / Barch_s<k>_utfm_vs_ugru A = U0_kin_can_noK_s<k>_kcv2_clip8_ln_{tcn,tfm} B = …_clip8_ln (survivor GRU)
# V (eval/paired_compare.py): Barch_s<k>_vgru_vs_vtcn / Barch_s<k>_vtfm_vs_vtcn A = V0_can4s_s<k>_stats2_{gru,tfm} B = V0_can4s_s<k>_stats2
# E (paired_compare.py D cells + F cosine; pressure_eval.py P cells): Barch_s<k>_eL1_vs_eL2 / Barch_s<k>_eL4_vs_eL2 (+ BarchP_… for the P onsets)
# A = E0_pooled_P_L{1,4}_s<k>_v2 B = E0_pooled_P_s<k>_v2
# Rendering: eval/report_branch_arch.py -> results/tables/branch_arch_ablation.md
set -u
cd "$(dirname "$0")/.."
PY=python
export OMP_NUM_THREADS=4 MKL_NUM_THREADS=4
have_tag() { grep -q ",$1,$2,test," results/paired_compare.csv 2>/dev/null; }
done_run() { [[ -f $1/PRED_DONE && -f $1/TRAIN_DONE ]]; }
pcj() { # tag regime a b (driver populations from the causal v2 packs)
local tag="$1" reg="$2" a="$3" b="$4"; shift 4
have_tag "$tag" "$reg" && return
echo "== $tag $reg"
$PY eval/paired_compare_joint.py --regime "$reg" --a "$a" --b "$b" --tag "$tag" --kin-targets causal_routes --kin-version v2 "$@" 2>&1 | grep -E "appended|LAYOUT GUARD|Error|Traceback|File \"" | cut -c1-220
}
pc() { # tag regime a b
local tag="$1" reg="$2" a="$3" b="$4"
have_tag "$tag" "$reg" && return
echo "== $tag $reg"
$PY eval/paired_compare.py --regime "$reg" --a "$a" --b "$b" --tag "$tag" 2>&1 | grep -E "appended|LAYOUT GUARD|Error|Traceback|File \"" | cut -c1-220
}
pp() { # tag regime a b (P onsets)
local tag="$1" reg="$2" a="$3" b="$4"
have_tag "$tag" "$reg" && return
echo "== $tag $reg"
$PY eval/pressure_eval.py --regime "$reg" --a "$a" --b "$b" --tag "$tag" 2>&1 | grep -E "appended|LAYOUT GUARD|Error|Traceback|File \"" | cut -c1-220
}
for s in ${1:-0 1 2}; do
UB=results/runs/U0_kin_can_noK_s${s}_kcv2_clip8_ln; VB=results/runs/V0_can4s_s${s}_stats2; EB=results/runs/E0_pooled_P_s${s}_v2
for reg in manual engaged; do
for a in tcn tfm; do A=${UB}_${a}; done_run $A && done_run $UB && pcj "Barch_s${s}_u${a}_vs_ugru" $reg $A $UB; done
for a in gru tfm; do A=${VB}_${a}; done_run $A && done_run $VB && pc "Barch_s${s}_v${a}_vs_vtcn" $reg $A $VB; done
for L in L1 L4; do A=results/runs/E0_pooled_P_${L}_s${s}_v2; if done_run $A && done_run $EB; then pc "Barch_s${s}_e${L}_vs_eL2" $reg $A $EB; pp "BarchP_s${s}_e${L}_vs_eL2" $reg $A $EB; fi; done
done
done
[[ "${2:-1}" == "1" ]] && $PY eval/report_branch_arch.py --seeds "${1:-0 1 2}" 2>&1 | tail -6
echo BRANCH_ARCH_EVALS_DONE

Xet Storage Details

Size:
2.95 kB
·
Xet hash:
abddfa60392458c3204d1a9f5491811353e93eeb81ffdbaab0c7ba357a19d7a8

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.