From b71e65c62c484dc55841086fd25b81ab17bdf5e2 Mon Sep 17 00:00:00 2001 From: Kanchana Ranasinghe Date: Sun, 26 Dec 2021 19:46:46 -0500 Subject: [PATCH] init --- scripts/eval_knn.sh | 24 ++++++++++++++++++++++++ scripts/eval_linear.sh | 33 +++++++++++++++++++++++++++++++++ scripts/train.sh | 30 ++++++++++++++++++++++++++++++ 3 files changed, 87 insertions(+) create mode 100755 scripts/eval_knn.sh create mode 100755 scripts/eval_linear.sh create mode 100755 scripts/train.sh diff --git a/scripts/eval_knn.sh b/scripts/eval_knn.sh new file mode 100755 index 0000000..8c547ad --- /dev/null +++ b/scripts/eval_knn.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +PROJECT_PATH="$HOME/repo/svt" +CHECKPOINT="path/to/checkpoint.pth" +DATASET="ucf101" +DATA_PATH="${HOME}/repo/mmaction2/data/${DATASET}" + +cd "$PROJECT_PATH" || exit + +export CUDA_VISIBLE_DEVICES=0 +python -m torch.distributed.launch \ + --nproc_per_node=1 \ + --master_port="$RANDOM" \ + eval_knn.py \ + --arch "vit_base" \ + --pretrained_weights "$CHECKPOINT" \ + --batch_size_per_gpu 128 \ + --nb_knn 5 \ + --temperature 0.07 \ + --num_workers 4 \ + --dataset "$DATASET" \ + --opts \ + DATA.PATH_TO_DATA_DIR "${DATA_PATH}/knn_splits" \ + DATA.PATH_PREFIX f"${DATA_PATH}/videos" diff --git a/scripts/eval_linear.sh b/scripts/eval_linear.sh new file mode 100755 index 0000000..bce227f --- /dev/null +++ b/scripts/eval_linear.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +PROJECT_PATH="$HOME/repo/svt" +EXP_NAME="le_001" +DATASET="ucf101" +DATA_PATH="${HOME}/repo/mmaction2/data/${DATASET}" +CHECKPOINT="path/to/checkpoint.pth" + +cd "$PROJECT_PATH" || exit + +if [ ! -d "checkpoints/$EXP_NAME" ]; then + mkdir "checkpoints/$EXP_NAME" +fi + +export CUDA_VISIBLE_DEVICES=0 +python -m torch.distributed.launch \ + --nproc_per_node=1 \ + --master_port="$RANDOM" \ + eval_linear.py \ + --n_last_blocks 1 \ + --arch "vit_base" \ + --pretrained_weights "$CHECKPOINT" \ + --epochs 20 \ + --lr 0.001 \ + --batch_size_per_gpu 16 \ + --num_workers 4 \ + --num_labels 101 \ + --dataset "$DATASET" \ + --output_dir "checkpoints/eval/$EXP_NAME" \ + --opts \ + DATA.PATH_TO_DATA_DIR "${DATA_PATH}/splits" \ + DATA.PATH_PREFIX f"${DATA_PATH}/videos" \ + DATA.USE_FLOW True diff --git a/scripts/train.sh b/scripts/train.sh new file mode 100755 index 0000000..2d7b611 --- /dev/null +++ b/scripts/train.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +PROJECT_PATH="$HOME/repo/svt" +DATA_PATH="$HOME/data/kinetics/400/annotations" +EXP_NAME="svt_test" + +cd "$PROJECT_PATH" || exit + +if [ ! -d "checkpoints/$EXP_NAME" ]; then + mkdir "checkpoints/$EXP_NAME" +fi + +export CUDA_VISIBLE_DEVICES=0,1,2,3 + +python -m torch.distributed.launch \ + --nproc_per_node=4 \ + --master_port="$RANDOM" \ + train_ssl.py \ + --arch "timesformer" \ + --batch_size_per_gpu 8 \ + --data_path "${DATA_PATH}" \ + --output_dir "checkpoints/$EXP_NAME" \ + --opts \ + MODEL.TWO_STREAM False \ + MODEL.TWO_TOKEN False \ + DATA.NO_FLOW_AUG False \ + DATA.USE_FLOW False \ + DATA.RAND_CONV False \ + DATA.NO_SPATIAL False +