| #!/bin/bash |
|
|
| |
| set -e |
|
|
| START_TS="$(date '+%F %T')" |
| START_EPOCH="$(date +%s)" |
| echo "[Start] ${START_TS}" |
|
|
| OUT_DIR="tabm_results_hyperopt_parallel" |
| mkdir -p "$OUT_DIR" |
|
|
| echo "[Hyperopt] Search for TabM hyperparameters (sum_exp_rank) and train the final model..." |
| python src/tabm_train.py \ |
| --data_file data/tabm_train.tsv \ |
| --model_out "$OUT_DIR/tabm_hyperopt_best.pth" \ |
| --max_evals 30 \ |
| --cv_folds 5 \ |
| --epochs 20 \ |
| --final_epochs 40 \ |
| --batch_size 128 \ |
| --alpha 0.005 \ |
| --tune_k \ |
| --device auto \ |
| --nr_hyperopt_rep 4 |
|
|
| MODEL_GLOB="$OUT_DIR/tabm_hyperopt_best_rep*.pth" |
|
|
| echo "Start evaluating (weighted average of multiple models)..." |
|
|
| python src/tabm_eval.py \ |
| --model_glob "$MODEL_GLOB" \ |
| --data_file achieve_features_test.tsv \ |
| --output_file "$OUT_DIR/TabM_NEO_test.txt" \ |
| --output_xlsx "$OUT_DIR/TabM_NEO_test.xlsx" \ |
| --tesla_file "$OUT_DIR/TabM_NEO_test_tesla.txt" \ |
| --tesla_xlsx "$OUT_DIR/TabM_NEO_test_tesla.xlsx" \ |
| --device auto --batch_size 1024 --skip_no_cd8 |
|
|
| echo "Evaluation completed!" |
|
|
| END_TS="$(date '+%F %T')" |
| END_EPOCH="$(date +%s)" |
| ELAPSED=$((END_EPOCH - START_EPOCH)) |
| H=$((ELAPSED/3600)) |
| M=$(((ELAPSED%3600)/60)) |
| S=$((ELAPSED%60)) |
| printf "[End] %s | Total elapsed: %02d:%02d:%02d\n" "$END_TS" "$H" "$M" "$S" |