SheffieldML / GPyOpt

Gaussian Process Optimization using GPy
BSD 3-Clause "New" or "Revised" License
927 stars 261 forks source link

What's the difference between normalize_Y=True and exact_feval=False? #350

Open lewisscola opened 3 years ago

lewisscola commented 3 years ago

Hi, I don't know the difference between normalize_Y and exact_feval in GpyOpt. I see the documention like: image image Is it means that we only have to set one of the parameters? (for example, if we choose normalize_Y=True, we don't have to set exact_feval=False) Could you help me explain it? Thank you!

astroHaoPeng commented 3 years ago

Base on my understanding, they are two different things:

normalize_Y means it will normalize the Y data before doing optimization. But user will always get dimensional output Y. Unless you debug into the detailed optimization processes, you will not interactive with the normalized Y.

Exact_feval means if your evaluation of the objective function f is exact. For example,