| #!/usr/bin/env bash |
|
|
| |
| repo_dir="$( cd "$( dirname "$0" )" && pwd )" |
| echo "==== Working directory: ====" >&2 |
| echo "${repo_dir}" >&2 |
| echo "============================" >&2 |
|
|
| main_config=$1 |
| source ${repo_dir}/scripts/load_config.sh ${main_config} ${repo_dir} |
|
|
| model_dir=${repo_dir}/model |
| data_dir=${repo_dir}/data |
|
|
| mkdir -p ${model_dir} ${data_dir}/mono |
|
|
|
|
| |
| data_var=data_1 |
| i=1 |
| data="" |
| while [[ ! -z ${!data_var} ]]; do |
| if [[ $data == "" ]]; then |
| data=${!data_var} |
| else |
| data=$data:${!data_var} |
| fi |
| i=$((i+1)) |
| data_var=data_$i |
| done |
|
|
| |
| mono_data_var=data_mono_1 |
| y=1 |
| mono_data="" |
| while [[ ! -z ${!mono_data_var} ]]; do |
| if [[ ${mono_data} == "" ]]; then |
| mono_data=${!mono_data_var} |
| else |
| mono_data=${mono_data}:${!mono_data_var} |
| fi |
| y=$((y+1)) |
| mono_data_var=data_mono_$y |
| done |
|
|
|
|
| command="CUDA_VISIBLE_DEVICES=${CUDA_VISIBLE_DEVICES} fairseq-train ${data} \ |
| --user-dir ${repo_dir}/mcolt \ |
| --save-dir ${model_dir} \ |
| --mono-data ${mono_data} \ |
| ${options} \ |
| --ddp-backend no_c10d 1>&2" |
|
|
| echo $command |
| eval $command |
|
|
|
|