VLAlert / training /Policy /train_m10_v3.sh
AsianPlayer's picture
Add VLAlert code
1e05592 verified
Raw
History Blame Contribute Delete
1.65 kB
#!/usr/bin/env bash
# M10-v3: MultiQueryPolicyHead on Qwen3-VL-4B per-frame belief cache.
# Reuses the existing M10 trainer (warm_start_trainer_m10.py); only the
# belief cache path differs (Qwen3 instead of Qwen2.5).
#
# Output: checkpoints/Policy/m10_qwen3vl4b_seed{0..4}/best.pt
set -euo pipefail
cd "$(dirname "$0")/../.."
CACHE_DIR=data/belief_cache_perframe_qwen3vl4b
LABEL_DIR=data/policy_labels
OUT_BASE=checkpoints/Policy
SEEDS=(0 1 2 3 4)
[[ -f $CACHE_DIR/multisrc_train.pt ]] || { echo "MISSING $CACHE_DIR/multisrc_train.pt"; exit 1; }
[[ -f $CACHE_DIR/multisrc_val.pt ]] || { echo "MISSING $CACHE_DIR/multisrc_val.pt"; exit 1; }
for SEED in "${SEEDS[@]}"; do
EXP=m10_qwen3vl4b_seed${SEED}
echo "=== [m10_v3] seed=${SEED}$OUT_BASE/$EXP ==="
python -m training.Policy.warm_start_trainer_m10 \
--label_dir $LABEL_DIR \
--train_cache_path $CACHE_DIR/multisrc_train.pt \
--val_cache_path $CACHE_DIR/multisrc_val.pt \
--output_dir $OUT_BASE \
--experiment_name $EXP \
--K 4 --d_out 512 --n_heads 4 \
--focal_alpha 0.75 --focal_gamma 2.0 \
--label_smoothing 0.05 \
--ortho_lambda 0.01 \
--cost_lambda 0.3 \
--ordinal_lambda 0.2 --ordinal_margin 0.2 \
--belief_noise_std 0.01 \
--num_epochs 6 \
--batch_size 256 \
--learning_rate 2e-4 \
--warmup_steps 200 \
--val_every_n_steps 200 \
--early_stop_patience 7 \
--use_balanced_sampler \
--seed ${SEED}
done
echo
echo "=== [m10_v3] all seeds done ==="
ls -d $OUT_BASE/m10_qwen3vl4b_seed*