And the low and high values are already the log value. For example it couldbe sth like low=1e-6, high=1e-3
; and not low=-6, high=-3
.
I'm having another problem now because I am using the OptunaOptimizer.
LethalDolphin75 Yes you are correct, we should add here:
https://github.com/allegroai/clearml/blob/400c6ec103d9f2193694c54d7491bb1a74bbe8e8/clearml/automation/optuna/optuna.py#L210elif isinstance(p, UniformLogarithmicParameterRange): hp_type = 'suggest_float' hp_params = dict(low=p.min_value, high=p.max_value if p.include_max else p.max_value - p.step_size, log=True, step=p.step_size)
btw: I'm not sure if the min/max values should be before or after log (i.e. low=log(p.min_value) or low=p.min_value )
I was looking at optuna package and noticed that they raise this ValueError:if step is not None: if log: raise ValueError("The parameter
stepis not supported when
logis True.")
So step_size
should always be None
Hi AgitatedDove14 , I made the PR: https://github.com/allegroai/clearml/pull/462 . Check it out and let me know. Thanks!
I'm having another problem now because I am using the OptunaOptimizer.
Hmm let me check a sec
Hi LethalDolphin75
I think you are right there isn't one (although I remember a discussion about it...)
Anyhow it will be very easy to implement, just inherit from:
https://github.com/allegroai/clearml/blob/400c6ec103d9f2193694c54d7491bb1a74bbe8e8/clearml/automation/parameters.py#L111
And return the power of the parent value here:
https://github.com/allegroai/clearml/blob/400c6ec103d9f2193694c54d7491bb1a74bbe8e8/clearml/automation/parameters.py#L146
And
https://github.com/allegroai/clearml/blob/400c6ec103d9f2193694c54d7491bb1a74bbe8e8/clearml/automation/parameters.py#L158
Wdyt?
Looks great, nice solution and easy to implement, thanks!
Hey LethalDolphin75 , when it works, could you PR it?