automl / neps

Neural Pipeline Search (NePS): Helps deep learning experts find the best neural pipeline.
https://automl.github.io/neps/
Apache License 2.0
44 stars 11 forks source link

Setting a Default Value for a Prior Outside of the Defined Search Range #35

Closed danrgll closed 7 months ago

danrgll commented 8 months ago

Are there any issues that may arise when setting a default value for a prior that is outside of the defined search range? How does this affect the overall optimization process, especially in relation to the boundaries of the search space and the interactions with the prior?

danrgll commented 8 months ago

*if I do so im able to break the code, we should catch that like for upper and lower bound, preventing any user-related mistakes when defining the configspace.

Traceback (most recent call last): File "/Users/daniel/PycharmProjects/testing_neps/pipeline_tuning.py", line 43, in neps.run( File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/neps/api.py", line 306, in run metahyper.run( File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/metahyper/api.py", line 422, in run ) = _sample_config(optimization_dir, sampler, serializer, logger) File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/metahyper/api.py", line 240, in _sample_config config, config_id, previous_config_id = sampler.get_config_and_ids() File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/neps/optimizers/multi_fidelity_prior/priorband.py", line 386, in get_config_and_ids return super().get_config_and_ids() File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/neps/optimizers/multi_fidelity/hyperband.py", line 225, in get_config_and_ids config, config_id, previous_config_id = self.sh_brackets[ File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/neps/optimizers/multi_fidelity/successive_halving.py", line 437, in get_config_and_ids config = self.sample_new_config(rung=rung_id) File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/neps/optimizers/multi_fidelity/mf_bo.py", line 166, in sample_new_config config = self.sampling_policy.sample(**self.sampling_args) File "/Users/daniel/opt/miniconda3/envs/neps2/lib/python3.9/site-packages/neps/optimizers/multi_fidelity/sampling_policy.py", line 170, in sample policy_idx = np.random.choice(range(len(prob_weights)), p=prob_weights) File "numpy/random/mtrand.pyx", line 970, in numpy.random.mtrand.RandomState.choice ValueError: probabilities contain NaN