PULSE-code / experiments /slurm /run_recog2.sh
velvet-pine-22's picture
Upload folder using huggingface_hub
b4b2877 verified
#!/bin/bash
# Action Recognition Round 2: Fix over-padding + add prev_action
# Key insight: segments are 1-6s (median 2s), window_sec=10 was 80% padding
# Group A: window=4s, 8 coarse (9 jobs)
# Group B: window=4s, 8 coarse + prev_action (9 jobs)
# Total: 18 jobs
PYTHON=python
BASEDIR=${PULSE_ROOT}
TRAIN_SCRIPT=${BASEDIR}/experiments/tasks/train_pred_cls.py
OUTDIR_A=${BASEDIR}/results/recog2a
OUTDIR_B=${BASEDIR}/results/recog2b
LOGDIR_A=${OUTDIR_A}/slurm_logs
LOGDIR_B=${OUTDIR_B}/slurm_logs
mkdir -p $LOGDIR_A $LOGDIR_B
COMMON_A="--mode recognition --coarse --epochs 80 --batch_size 32 --lr 1e-3 --weight_decay 1e-4 --hidden_dim 128 --dropout 0.2 --downsample 5 --patience 20 --seed 42 --augment --noise_std 0.1 --time_mask_ratio 0.1 --label_smoothing 0.1 --window_sec 4.0"
COMMON_B="$COMMON_A --use_prev_action"
MODS=("imu" "emg" "mocap" "emg,imu" "mocap,imu" "mocap,emg,imu" "mocap,emg,eyetrack" "mocap,emg,eyetrack,imu" "mocap,emg,eyetrack,imu,pressure")
echo "=== Group A: window=4s, no prev_action ==="
for mods in "${MODS[@]}"; do
mod_tag=$(echo $mods | tr ',' '-')
sbatch \
-J "rec2a_${mod_tag}" \
-p gpuA800 \
--gres=gpu:1 \
-N 1 -n 1 \
--cpus-per-task=4 \
--mem=32G \
-t 2:00:00 \
-o "${LOGDIR_A}/${mod_tag}_%j.out" \
-e "${LOGDIR_A}/${mod_tag}_%j.err" \
--export=ALL \
--wrap="export PYTHONUNBUFFERED=1; cd ${BASEDIR}; $PYTHON $TRAIN_SCRIPT --modalities $mods $COMMON_A --output_dir $OUTDIR_A"
echo "Submitted A: $mods"
done
echo ""
echo "=== Group B: window=4s + prev_action ==="
for mods in "${MODS[@]}"; do
mod_tag=$(echo $mods | tr ',' '-')
sbatch \
-J "rec2b_${mod_tag}" \
-p gpuA800 \
--gres=gpu:1 \
-N 1 -n 1 \
--cpus-per-task=4 \
--mem=32G \
-t 2:00:00 \
-o "${LOGDIR_B}/${mod_tag}_%j.out" \
-e "${LOGDIR_B}/${mod_tag}_%j.err" \
--export=ALL \
--wrap="export PYTHONUNBUFFERED=1; cd ${BASEDIR}; $PYTHON $TRAIN_SCRIPT --modalities $mods $COMMON_B --output_dir $OUTDIR_B"
echo "Submitted B: $mods"
done
echo ""
echo "Total: 18 jobs | Recognition Round 2"
echo "Group A (window=4s): $OUTDIR_A"
echo "Group B (window=4s+prev): $OUTDIR_B"