runAll_maxwell_mscn_var.sh 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #! bin/bash
  2. # erase "results/models_comparisons.csv" file and write new header
  3. file_path='results/models_comparisons.csv'
  4. erased=$1
  5. if [ "${erased}" == "Y" ]; then
  6. echo "Previous data file erased..."
  7. rm ${file_path}
  8. mkdir -p results
  9. touch ${file_path}
  10. # add of header
  11. echo 'model_name; vector_size; start_index; end; nb_zones; feature; mode; tran_size; val_size; test_size; train_pct_size; val_pct_size; test_pct_size; train_acc; val_acc; test_acc; all_acc; F1_train; recall_train; roc_auc_train; F1_val; recall_val; roc_auc_val; F1_test; recall_test; roc_auc_test; F1_all; recall_all; roc_auc_all;' >> ${file_path}
  12. fi
  13. start_index=0
  14. end_index=4
  15. # selection of four scenes (only maxwell)
  16. scenes="A, D, G, H"
  17. declare -A features_size
  18. features_size=( ["mscn_var_4"]=4 ["mscn_var_16"]=16 ["mscn_var_64"]=64 ["mscn_var_16_max"]=4 ["mscn_var_64_max"]=16)
  19. for nb_zones in {4,6,8,10,12}; do
  20. for mode in {"svd","svdn","svdne"}; do
  21. for feature in {"mscn_var_4","mscn_var_16","mscn_var_64","mscn_var_16_max","mscn_var_64_max"}; do
  22. for model in {"svm_model","ensemble_model","ensemble_model_v2"}; do
  23. end_index=${features_size[${feature}]}
  24. FILENAME="data/${model}_N${end_index}_B${start_index}_E${end_index}_nb_zones_${nb_zones}_${feature}_${mode}"
  25. MODEL_NAME="${model}_N${end_index}_B${start_index}_E${end_index}_nb_zones_${nb_zones}_${feature}_${mode}"
  26. echo $FILENAME
  27. # only compute if necessary (perhaps server will fall.. Just in case)
  28. if grep -q "${MODEL_NAME}" "${file_path}"; then
  29. echo "${MODEL_NAME} results already generated..."
  30. else
  31. python generate/generate_data_model_random.py --output ${FILENAME} --interval "${start_index},${end_index}" --kind ${mode} --feature ${feature} --scenes "${scenes}" --nb_zones "${nb_zones}" --percent 1 --renderer "maxwell" --step 10 --random 1
  32. python train_model.py --data ${FILENAME} --output ${MODEL_NAME} --choice ${model}
  33. python others/save_model_result_in_md_maxwell.py --interval "${start_index},${end_index}" --model "saved_models/${MODEL_NAME}.joblib" --mode "${mode}" --feature ${feature}
  34. fi
  35. done
  36. done
  37. done
  38. done