runAll_maxwell_sub_blocks_stats_reduced.sh 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. #! bin/bash
  2. # erase "results/models_comparisons.csv" file and write new header
  3. file_path='results/models_comparisons.csv'
  4. list="all, center, split"
  5. if [ -z "$1" ]
  6. then
  7. echo "No argument supplied"
  8. echo "Need argument from [${list}]"
  9. exit 1
  10. fi
  11. if [[ "$1" =~ ^(all|center|split)$ ]]; then
  12. echo "$1 is in the list"
  13. else
  14. echo "$1 is not in the list"
  15. fi
  16. data=$1
  17. erased=$2
  18. if [ "${erased}" == "Y" ]; then
  19. echo "Previous data file erased..."
  20. rm ${file_path}
  21. mkdir -p results
  22. touch ${file_path}
  23. # add of header
  24. 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}
  25. fi
  26. feature="sub_blocks_stats_reduced"
  27. start_index=0
  28. end_index=24
  29. number=24
  30. # selection of four scenes (only maxwell)
  31. scenes="A, D, G, H"
  32. for nb_zones in {4,6,8,10,12}; do
  33. for mode in {"svd","svdn","svdne"}; do
  34. for model in {"svm_model","ensemble_model","ensemble_model_v2"}; do
  35. FILENAME="data/${model}_N${number}_B${start_index}_E${end_index}_nb_zones_${nb_zones}_${feature}_${mode}"
  36. MODEL_NAME="${model}_N${number}_B${start_index}_E${end_index}_nb_zones_${nb_zones}_${feature}_${mode}"
  37. echo $FILENAME
  38. # only compute if necessary (perhaps server will fall.. Just in case)
  39. if grep -q "${MODEL_NAME}" "${file_path}"; then
  40. echo "${MODEL_NAME} results already generated..."
  41. else
  42. python generate/generate_data_model_random_${data}.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
  43. python train_model.py --data ${FILENAME} --output ${MODEL_NAME} --choice ${model}
  44. python others/save_model_result_in_md_maxwell.py --interval "${start_index},${end_index}" --model "saved_models/${MODEL_NAME}.joblib" --mode "${mode}" --feature ${feature}
  45. fi
  46. done
  47. done
  48. done