automl / jahs_bench_201

The first collection of surrogate benchmarks for Joint Architecture and Hyperparameter Search.
https://automl.github.io/jahs_bench_201/
MIT License
15 stars 7 forks source link

Ambiguity in the query #11

Open nabenabe0928 opened 1 year ago

nabenabe0928 commented 1 year ago

This is not exactly an issue but leads to misunderstandings, so I would like to mention it here.

  1. Which will be taken into account, nepochs in the argument of Benchmark.__call__ or epoch in config dict? (I know the answer is nepochs, but it is ambiguous until we run)
  2. We do not get any out of domain errors for numerical parameters (e.g. we can specify N=100) and it seems fidelity parameters are rounded somehow?
  3. Continuous parameter also does not have out-of-domain errors and seems to be rounded?

I would really appreciate if we can choose a mode, either clipping automatically or raising errors anytime you get invalid items.

eddiebergman commented 1 year ago

I guess the surrogate is fine with out of domain values but i agree that an out of domain check would be helpful. I ended up creating my own configs with a validate() and manually specifying the bounds to counter this.

NeoChaos12 commented 1 year ago

This is a very valid point, thank you for bringing it up! The way the number of epochs is currently being handled is definitely sub-optimal and will be revised in the upcoming updates.

Regarding the domain checks, this is something that requires some discussion.

What is your opinion?

nabenabe0928 commented 1 year ago

Hi, thanks for the response:)

For the tabular, I don't think we need the check, but for the surrogate model, it would be grateful to have warning at least because XGBoost gives, by nature of the decision tree, the same prediction on each parameter which is rounded to the original range.