| #!/bin/bash |
| |
| |
|
|
| PYTHON=python |
| BASEDIR=${PULSE_ROOT} |
| SCRIPT=${BASEDIR}/experiments/train_exp1.py |
| OUTDIR=${BASEDIR}/results/exp1_v8 |
| LOGDIR=${OUTDIR}/slurm_logs |
| mkdir -p $LOGDIR |
|
|
| COMMON="--epochs 100 --batch_size 16 --lr 1e-3 --weight_decay 1e-4 --hidden_dim 128 --downsample 5 --patience 15 --seed 42 --proj_dim 0 --output_dir $OUTDIR" |
| MODELS=("cnn" "lstm" "transformer") |
|
|
| |
| |
| echo "=== Part 1: Mocap single modality (3 jobs) ===" |
| for model in "${MODELS[@]}"; do |
| sbatch -J "e1v8_${model}_mocap" -p gpuA800 --gres=gpu:1 -N1 -n1 \ |
| --cpus-per-task=4 --mem=32G -t 2:00:00 \ |
| -o "${LOGDIR}/${model}_mocap_early_%j.out" \ |
| -e "${LOGDIR}/${model}_mocap_early_%j.err" \ |
| --export=ALL \ |
| --wrap="export PYTHONUNBUFFERED=1; cd ${BASEDIR}; $PYTHON $SCRIPT --model $model --modalities mocap --fusion early $COMMON" |
| echo " $model / mocap / early" |
| done |
|
|
| |
| echo "" |
| echo "=== Part 2: Multi-modal with mocap (12 jobs) ===" |
| for mods in "imu,mocap" "mocap,emg" "imu,mocap,emg"; do |
| mod_tag=$(echo $mods | tr ',' '-') |
| for model in "${MODELS[@]}"; do |
| sbatch -J "e1v8_${model}_${mod_tag}" -p gpuA800 --gres=gpu:1 -N1 -n1 \ |
| --cpus-per-task=4 --mem=64G -t 2:00:00 \ |
| -o "${LOGDIR}/${model}_${mod_tag}_early_%j.out" \ |
| -e "${LOGDIR}/${model}_${mod_tag}_early_%j.err" \ |
| --export=ALL \ |
| --wrap="export PYTHONUNBUFFERED=1; cd ${BASEDIR}; $PYTHON $SCRIPT --model $model --modalities $mods --fusion early $COMMON" |
| echo " $model / $mods / early" |
| done |
| done |
|
|
| |
| FUSIONS=("late" "attention" "weighted_late" "gated_late" "stacking" "product" "moe") |
| echo "" |
| echo "=== Part 3: Fusion Ablation - transformer × imu+mocap+emg (7 jobs) ===" |
| for fusion in "${FUSIONS[@]}"; do |
| sbatch -J "e1v8_tf_${fusion}" -p gpuA800 --gres=gpu:1 -N1 -n1 \ |
| --cpus-per-task=4 --mem=64G -t 2:00:00 \ |
| -o "${LOGDIR}/transformer_imu-mocap-emg_${fusion}_%j.out" \ |
| -e "${LOGDIR}/transformer_imu-mocap-emg_${fusion}_%j.err" \ |
| --export=ALL \ |
| --wrap="export PYTHONUNBUFFERED=1; cd ${BASEDIR}; $PYTHON $SCRIPT --model transformer --modalities imu,mocap,emg --fusion $fusion $COMMON" |
| echo " transformer / imu,mocap,emg / $fusion" |
| done |
|
|
| echo "" |
| echo "Total: 22 jobs | mocap=620d (hip-relative+velocity) | No projection" |
| echo "Results: $OUTDIR" |
|
|