You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This workflow uses IMPROVE parameter handling. You should create a config file following the template of `hpo_deephyper_params.ini` with the parameters appropriate for your experiment. Parameters may also be specified on the command line.
61
+
62
+
63
+
*`model_scripts_dir` should be set to the path to the model directory containing the model scripts (from step 1).
64
+
*`input_dir` should be set to the location of the preprocessed data (above). We highly recommend that the name of this directory includes the source and split (e.g. ./ml_data/CCLE-CCLE/split_0). You can provide a complete or relative path, or the name of the directory if it is in `model_scripts_dir`.
65
+
*`model_name` should be set to your model name (this should have the same capitalization pattern as your model scripts, e.g. deepttc for deepttc_preprocess_improve.py, etc).
66
+
*`model_environment` should be set to the location of the model environment (from step 1). You can provide a complete or relative path, or the name of the directory if it is in `model_scripts_dir`.
67
+
*`output_dir` should be set to path you would like the output to be saved to. We highly recommend that the name of this directory includes the source and split (e.g. ./deephyper/CCLE/split_0)
68
+
69
+
*`max_evals` should be set to the maximum number of evaluations to check for before launching additional training runs.
70
+
*`hyperparameter_file` can be set to an alternate .json file containing hyperparameters. You can provide a complete or relative path, or the name of the directory if it is in `model_scripts_dir`. See below (step 5) for how to change hyperparameters.
71
+
*`val_metric` can be set to any IMPROVE metric you would like to optimize. 'mse' and 'rmse' are minimized, all other metrics are maximized. Note that this does not change what val loss is used by the model, only what HPO tries to optimize. Default is 'mse'.
72
+
*`num_gpus_per_node` should be set to the number of GPUs per node on your system. Default is 2.
73
+
*`epochs`: Number of epochs to train for. If None is specified, model default parameters will be used (default: None).
74
+
* Parameters beginning with `CBO_` can be used to change the optimization protocol. The names of these parameters can be found by running `python hpo_deephyper_subprocess.py --help` or looking in `hpo_deephyper_params_def.py`. Documentation of the DeepHyper CBO can be found [here](https://deephyper.readthedocs.io/en/stable/_autosummary/deephyper.hpo.CBO.html#deephyper.hpo.CBO).
75
+
76
+
**Hyperparameters**
38
77
39
-
## 4. Modify configuration file
40
-
`hpo_deephyper_params.ini` is an example configuration file for this workflow.
41
-
You will need to change the following parameters for your model:
42
-
`model_scripts_dir` should be set to the path to the model directory containing the model scripts (from step 1).
43
-
`input_dir` should be set to the location of the preprocessed data (above). We highly recommend that the name of this directory includes the source and split (e.g. ./ml_data/CCLE-CCLE/split_0). You can provide a complete or relative path, or the name of the directory if it is in `model_scripts_dir`.
44
-
`model_name` should be set to your model name (this should have the same capitalization pattern as your model scripts, e.g. deepttc for deepttc_preprocess_improve.py, etc).
45
-
`model_environment` should be set to the location of the model environment (from step 1). You can provide a complete or relative path, or the name of the directory if it is in `model_scripts_dir`.
46
-
`output_dir` should be set to path you would like the output to be saved to. We highly recommend that the name of this directory includes the source and split (e.g. ./deephyper/CCLE/split_0)
47
-
`epochs` should be set to the maximum number of epochs to train for.
48
-
`max_evals` should be set to the maximum number of evaluations to check for before launching additional training runs.
49
-
`interactive_session` should be set to True to run on Lambda, Polaris, and Biowulf. Other implementations have not yet been tested.
50
-
`hyperparameter_file` can be set to an alternate .json file containing hyperparameters. You can provide a complete or relative path, or the name of the directory if it is in `model_scripts_dir`. See below (step 5) for how to change hyperparameters.
51
-
`val_metric` can be set to any IMPROVE metric you would like to optimize. 'mse' and 'rmse' are minimized, all other metrics are maximized. Note that this does not change what val loss is used by the model, only what HPO tries to optimize. Default is 'mse'.
52
-
`num_gpus_per_node` should be set to the number of GPUs per node on your system. Default is 2.
53
-
Parameters beginning with `CBO_` can be used to change the optimization protocol. The names of these parameters can be found by running `python hpo_deephyper_subprocess.py --help` or looking in `hpo_deephyper_params_def.py`. Documentation of the DeepHyper CBO can be found here: https://deephyper.readthedocs.io/en/stable/_autosummary/deephyper.hpo.CBO.html#deephyper.hpo.CBO
54
-
55
-
56
-
## 5. Modify hyperparameters file
57
78
`hpo_deephyper_hyperparameters.json` contains dictionaries for the hyperparameters.
58
79
The default settings are as follows:
59
80
@@ -73,27 +94,18 @@ You can add more hyperparameters to test by adding additional dictionaries to th
73
94
```
74
95
Note that boolean values must be lowercase in JSON files.
75
96
97
+
## Usage
76
98
77
-
## 6. Perform HPO
78
-
Navigate to the DeepHyper directory
79
-
```
80
-
cd <WORKING_DIR>/IMPROVE/workflows/deephyper_hpo
81
-
```
82
-
If necesssary (i.e not proceeding directly from above steps), activate environment:
0 commit comments