AsianPlayer/TriDrive / code /eval /run_joint_evals.sh
AsianPlayer's picture
download
raw
2.22 kB
#!/usr/bin/env bash
# cwm3/eval/run_joint_evals.sh — paired comparisons for the joint stages (CPU), idempotent per (pair, seed, regime): skips pairs whose two
# run dirs are not both PRED_DONE and pairs already present in results/paired_compare.csv (tag match).
# bash eval/run_joint_evals.sh "0 1 2" # seeds
# Pairs (tag = <stage>_s<k>_<a>_vs_<b>): I1 all|none|naive|road2drv|env2veh|drv2veh|frozen vs indep; all vs none; F1 chunked vs direct_fresh;
# F1 chunked vs I1 all (cross-stage: tag F1_s<k>_chunked_vs_I1all). Then the stage tables (eval/report_joint.py).
set -u
cd "$(dirname "$0")/.."
PY=python
SEEDS="${1:-0 1 2}"
export OMP_NUM_THREADS=4 MKL_NUM_THREADS=4
done_dir() { [[ -f "results/runs/$1/PRED_DONE" ]]; }
have_tag() { grep -q ",$1,$2,test," results/paired_compare.csv 2>/dev/null; } # run_stamp,tag,regime,split,...
pair() { # stage a b seed [b_dir_override] [tag_override]
local stage="$1" a="$2" b="$3" s="$4"; local bdir="${5:-${stage}_${b}_s${s}}" tag="${6:-${stage}_s${s}_${a}_vs_${b}}"
local adir="${stage}_${a}_s${s}"
done_dir "$adir" && done_dir "$bdir" || { echo "skip $tag (runs not finished)"; return; }
for regime in manual engaged; do
have_tag "$tag" "$regime" && { echo "have $tag $regime"; continue; }
echo "== $tag $regime"
$PY eval/paired_compare_joint.py --regime "$regime" --a "results/runs/$adir" --b "results/runs/$bdir" --tag "$tag" 2>&1 | grep -E "^ |appended|Error|Traceback"
done
}
for s in $SEEDS; do
for v in all none naive road2drv env2veh drv2veh frozen all_enc; do pair I1 "$v" indep "$s"; done
pair I1 all none "$s"
pair I1 naive_fresh indep "$s"
pair I1 naive_fresh naive "$s"
pair F1 chunked direct_fresh "$s"
pair F1 chunked all "$s" "I1_all_s${s}" "F1_s${s}_chunked_vs_I1all"
pair F1 direct_fresh all "$s" "I1_all_s${s}" "F1_s${s}_direct_fresh_vs_I1all"
done
$PY eval/report_joint.py --stage I1 --a all --b indep --claim B2 --extra none:indep all:none naive:indep road2drv:indep env2veh:indep drv2veh:indep frozen:indep --out results/tables/stage_I1.md 2>&1 | tail -3 || true
$PY eval/report_joint.py --stage F1 --a chunked --b direct_fresh --claim B3 --out results/tables/stage_F.md 2>&1 | tail -3 || true

Xet Storage Details

Size:
2.22 kB
·
Xet hash:
376f60a1479dc2f6dbc5e23b07cac26eb79b43d73b86cc7b01659f527ead617c

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