For sigopt, see sigopt object_parameter, it's like following: | |
def sigopt_hp_space(trial): | |
return [ | |
{"bounds": {"min": 1e-6, "max": 1e-4}, "name": "learning_rate", "type": "double"}, | |
{ | |
"categorical_values": ["16", "32", "64", "128"], | |
"name": "per_device_train_batch_size", | |
"type": "categorical", | |
}, | |
] | |
For optuna, see optuna object_parameter, it's like following: | |
def optuna_hp_space(trial): | |
return { | |
"learning_rate": trial.suggest_float("learning_rate", 1e-6, 1e-4, log=True), | |
"per_device_train_batch_size": trial.suggest_categorical("per_device_train_batch_size", [16, 32, 64, 128]), | |
} | |
Optuna provides multi-objective HPO. |