syne_tune.experiments.launchers.launch_remote_simulator module
- syne_tune.experiments.launchers.launch_remote_simulator.get_hyperparameters(seed, method, experiment_tag, random_seed, configuration)[source]
Compose hyperparameters for SageMaker training job
- Parameters:
seed (
int
) – Seed of repetitionmethod (
str
) – Method nameexperiment_tag (
str
) – Tag of experimentrandom_seed (
int
) – Master random seedconfiguration (
ConfigDict
) – Configuration for the job
- Return type:
Dict
[str
,Any
]- Returns:
Dictionary of hyperparameters
- syne_tune.experiments.launchers.launch_remote_simulator.launch_remote(entry_point, methods, benchmark_definitions, source_dependencies=None, extra_args=None, is_expensive_method=None)[source]
Launches sequence of SageMaker training jobs, each running an experiment with the simulator backend.
The loop runs over methods selected from
methods
. Different repetitions (seeds) are run sequentially in the remote job. However, ifis_expensive_method(method_name)
is true, we launch different remote jobs for every seed for this particular method. This is to cater for methods which are themselves expensive to run (e.g., involving Gaussian process based Bayesian optimization).If
benchmark_definitions
is a single-level dictionary and no benchmark is selected on the command line, then all benchmarks are run sequentially in the remote job. However, ifbenchmark_definitions
is two-level nested, we loop over the outer level and start separate remote jobs, each of which iterates over its inner level of benchmarks. This is useful if the number of benchmarks to iterate over is large.- Parameters:
entry_point (
Path
) – Script for running the experimentmethods (
Dict
[str
,Any
]) – Dictionary with method constructors; one is selected from command line argumentsbenchmark_definitions (
Union
[Dict
[str
,SurrogateBenchmarkDefinition
],Dict
[str
,Dict
[str
,SurrogateBenchmarkDefinition
]]]) – Definitions of benchmarks, can be nested (see above)source_dependencies (
Optional
[List
[str
]]) – If given, these are source dependencies for the SageMaker estimator, on top of Syne Tune itselfextra_args (
Optional
[List
[Dict
[str
,Any
]]]) – Extra arguments for command line parser, optionalis_expensive_method (
Optional
[Callable
[[str
],bool
]]) – See above. The default is a predicative always returning False (no method is expensive)
- syne_tune.experiments.launchers.launch_remote_simulator.launch_remote_experiments_simulator(configuration, entry_point, methods, benchmark_definitions, source_dependencies, is_expensive_method=None)[source]
Launches sequence of SageMaker training jobs, each running an experiment with the simulator backend.
The loop runs over methods selected from
methods
. Different repetitions (seeds) are run sequentially in the remote job. However, ifis_expensive_method(method_name)
is true, we launch different remote jobs for every seed for this particular method. This is to cater for methods which are themselves expensive to run (e.g., involving Gaussian process based Bayesian optimization).If
benchmark_definitions
is a single-level dictionary and no benchmark is selected on the command line, then all benchmarks are run sequentially in the remote job. However, ifbenchmark_definitions
is two-level nested, we loop over the outer level and start separate remote jobs, each of which iterates over its inner level of benchmarks. This is useful if the number of benchmarks to iterate over is large.- Parameters:
configuration (
ConfigDict
) – ConfigDict with parameters of the benchmark. Must contain all parameters from hpo_main_simulator.LOCAL_LOCAL_SIMULATED_BENCHMARK_REQUIRED_PARAMETERSentry_point (
Path
) – Script for running the experimentmethods (
Dict
[str
,Callable
[[MethodArguments
],TrialScheduler
]]) – Dictionary with method constructors; one is selected from command line argumentsbenchmark_definitions (
Union
[Dict
[str
,SurrogateBenchmarkDefinition
],Dict
[str
,Dict
[str
,SurrogateBenchmarkDefinition
]]]) – Definitions of benchmarks; one is selected from command line argumentsis_expensive_method (
Optional
[Callable
[[str
],bool
]]) – See above. The default is a predicative always returning False (no method is expensive)