|
1 | | -# Evaluation on Test Data |
| 1 | +# Evaluation on Test Data |
| 2 | +[<- Back to Main README](/financial_loss_functions/README.md) |
| 3 | + |
| 4 | +## Evaluate Selected Candidates on the Test Data |
| 5 | + |
| 6 | +### Run Evaluation on Test Data |
| 7 | +```bash |
| 8 | +python -m scripts.run_evaluation [--prev_mode PREVIOUS MODE] [OPTIONS] |
| 9 | +``` |
| 10 | + |
| 11 | +#### Arguments Reference |
| 12 | +| Flag | Long Flag | Choices / Type | Default | Notes | |
| 13 | +| :--- | :--- | :--- | :--- | :--- | |
| 14 | +| `-pm` | `--prev_mode` | `one_model`, `one` | `one_model` | The grid mode used in the previous tuning stage. | |
| 15 | +| `-m` | `--model_losses` | `[<MODEL_NAME1>-<LOSS_NAME1>]` | None | List of model-loss combinations to run the test evaluation | |
| 16 | +| `-mpi` | `--mpi` | *None* | None | Flag to use mpi for distributed evaluation if grid mode is "one_model" | |
| 17 | + |
| 18 | +#### Examples: |
| 19 | +1. Run a selected collection of model-loss combinations on a HPC cluster. |
| 20 | +```bash |
| 21 | +srun python -m scripts.run_evaluation --model_losses <MODEL_NAME1>-<LOSS_NAME1> <MODEL_NAME2>-<LOSS_NAME2> --mpi |
| 22 | +``` |
| 23 | + |
| 24 | +To run this sequentially (not recommended): |
| 25 | +```bash |
| 26 | +python -m scripts.run_evaluation --model_losses <MODEL_NAME1>-<LOSS_NAME1> <MODEL_NAME2>-<LOSS_NAME2> |
| 27 | +``` |
| 28 | + |
| 29 | +2. Run specific model-loss combination (no mpi, flag will be ignored): |
| 30 | +```bash |
| 31 | +python -m scripts.run_evaluation --model_losses <MODEL_NAME1>-<LOSS_NAME1> |
| 32 | +``` |
| 33 | + |
| 34 | +3. Run specific model-loss combination when the previously used mode was 'one': |
| 35 | +```bash |
| 36 | +python -m scripts.run_evaluation --prev_mode one --model_losses <MODEL_NAME1>-<LOSS_NAME1> |
| 37 | +`` |
| 38 | + |
| 39 | +4. To get help |
| 40 | +```bash |
| 41 | +python -m scripts.run_evaluation --help |
| 42 | +``` |
| 43 | + |
| 44 | +#### Example SBATCH Script |
| 45 | +```bash |
| 46 | +#!/bin/bash -l |
| 47 | +
|
| 48 | +#SBATCH --job-name=<JOB NAME> |
| 49 | +#SBATCH --comment="<DESCRIPTION>" |
| 50 | +
|
| 51 | +#SBATCH --account=<ACC. NAME> |
| 52 | +#SBATCH --partition=<PARTITION NAME> # Partition to run your job on |
| 53 | +
|
| 54 | +#SBATCH --output=<OUTPUT FILE PATH> # Output file |
| 55 | +#SBATCH --error=<ERROR FILE PATH> # Error file |
| 56 | +
|
| 57 | +#SBATCH --time=0-28:00:00 # Time limit - d:hh:mm:ss |
| 58 | +#SBATCH --nodes=1 # How many nodes to run on |
| 59 | +#SBATCH --ntasks-per-node=8 # Ranks per node |
| 60 | +#SBATCH --cpus-per-task=2 # Number of CPUs per task |
| 61 | +#SBATCH --mem-per-cpu=4g # Memory per CPU |
| 62 | +#SBATCH --gres=gpu:2 # GPUs per node |
| 63 | +
|
| 64 | +
|
| 65 | +# Running Code |
| 66 | +source /home/<USER_NAME>/miniconda3/etc/profile.d/conda.sh |
| 67 | +conda activate <ENV_NAME> |
| 68 | +
|
| 69 | +srun python -m scripts.run_evaluation -pm one_model \ |
| 70 | +-m <MODEL_NAME1>-<LOSS_NAME1> <MODEL_NAME2>-<LOSS_NAME2> -mpi |
| 71 | +``` |
| 72 | +All SBATCH examples can be found at `./scripts/sample_batch_scripts/`. The example above can be found at [sample_batch_script](../../scripts/sample_batch_scripts/sample_test_all.sh). |
0 commit comments