|
#!/bin/bash |
|
PROJECT_DIR=${HOME}"/models/t5-nynorsk-norbench" |
|
export PYTHONPATH=${PROJECT_DIR} |
|
echo "PROJECT_DIR is set to: ${PROJECT_DIR}" |
|
|
|
|
|
FINETUNE_STEPS=20000 |
|
EVAL_PREFIX="norbench/eval_lr_decay_translate_" |
|
MODEL_BUCKET_DIR="gs://pere-north-t5x/finetuned/" |
|
|
|
CHECKPOINT_LIST=( |
|
"pere-north-t5x/pretrained_models/base/norwegian_NCC_plus_English_t5x_base/checkpoint_1500000" |
|
"pere-north-t5x/pretrained_models/base/norwegian_NCC_plus_English_t5x_base/checkpoint_1500000" |
|
"pere-north-t5x/pretrained_models/base/norwegian_NCC_plus_English_t5x_base/checkpoint_1500000" |
|
"pere-north-t5x/pretrained_models/base/norwegian_NCC_plus_English_t5x_base/checkpoint_1500000" |
|
"pere-north-t5x/pretrained_models/base/norwegian_NCC_plus_English_t5x_base/checkpoint_1500000" |
|
"pere-north-t5x/pretrained_models/base/norwegian_NCC_plus_English_t5x_base/checkpoint_1500000" |
|
) |
|
|
|
NAME_LIST=( |
|
"north_t5_base_NCC_LR_0_00001" |
|
"north_t5_base_NCC_LR_0_0001" |
|
"north_t5_base_NCC_LR_0_0005" |
|
"north_t5_base_NCC_LR_0_00075" |
|
"north_t5_base_NCC_LR_0_001" |
|
"north_t5_base_NCC_LR_0_002" |
|
) |
|
|
|
TASK_LIST=("translate_mt5" "translate_mt5" "translate_mt5" "translate_mt5" "translate_mt5" "translate_mt5") |
|
LR_LIST=(0.00001 0.0001 0.0005 0.00075 0.001 0.002) |
|
|
|
|
|
GIN_LIST=( |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
"finetune_translate_base_mt5_lr_decay.gin" |
|
) |
|
|
|
START_LIST=(1500000 1500000 1500000 1500000 1500000 1500000) |
|
EXP_LIST=(127 128 129 130 131 132) |
|
|
|
|
|
VERSION_LIST=("1") |
|
|
|
index=$(($1 + 0)) |
|
|
|
if [ $index -lt 1 ] || [ $index -gt ${#CHECKPOINT_LIST[@]} ] || [ $# -ne 1 ]; then |
|
echo "Error: You need to provide the number of the checkpoints below as a parameter." |
|
for i in "${!CHECKPOINT_LIST[@]}"; do |
|
echo "$((i+1)). ${CHECKPOINT_LIST[i]}" |
|
done |
|
|
|
exit 1 |
|
fi |
|
|
|
for v in "${VERSION_LIST[@]}"; do |
|
i=($index-1) |
|
INITIAL_CHECKPOINT_PATH="gs://${CHECKPOINT_LIST[i]}" |
|
|
|
TRAIN_STEPS=$((START_LIST[i]+FINETUNE_STEPS)) |
|
GIN_FILE=${GIN_LIST[i]} |
|
MIXTURE_OR_TASK_NAME=${TASK_LIST[i]} |
|
LR=${LR_LIST[i]} |
|
MODEL_DIR="${MODEL_BUCKET_DIR}${EVAL_PREFIX}_exp${EXP_LIST[i]}_${NAME_LIST[i]}_v${v}" |
|
|
|
command="python3 ../../t5x/t5x/train.py --gin_search_paths=\"./\" --gin.TRAIN_STEPS=${TRAIN_STEPS} --gin.LR=${LR} --gin_file=${GIN_FILE} --gin.INITIAL_CHECKPOINT_PATH=\\\"${INITIAL_CHECKPOINT_PATH}\\\" --gin.MIXTURE_OR_TASK_NAME=\\\"${MIXTURE_OR_TASK_NAME}\\\" --gin.MODEL_DIR=\\\"${MODEL_DIR}\\\"" |
|
echo "${command}" |
|
|
|
eval "${command}" |
|
done |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|