Comments (11)
I've seen this behavior with other implementations too. My understanding is that the time taken to calculate the GP will scale cubically with the number of observations. However, the actual calculation itself should be relatively quick, especially compared to the black-box function.
from bayesianoptimization.
I resisted intervening here since the optimizer could be made faster by the user. However I decided to bite the bullet and make the changes. See #176
from bayesianoptimization.
@KOLANICH what other optimizers have you used? any of them do Bayesian optimization?
Here is the list: https://gitlab.com/KOLANICH/UniOpt.py/tree/master/UniOpt/backends
from bayesianoptimization.
You control the training of the underlying Gaussian Process by passing **gp_params to the maximize method. The default behaviour included 25 rounds of pseudo-likelihood optimization, which happening internally within sklearn's GP.
Is this pattern consistent? GPs are finicky, sometime I find you get odd numerical instabilities throwing you off. Increasing alpha
usually helps, since it makes the process of inverting the covariance matrix more stable.
from bayesianoptimization.
I'm also seeing this behavior, and increasing alpha doesn't do anything
from bayesianoptimization.
I'm also seeing this behavior. Alpha doesn't change anything:
from bayes_opt import BayesianOptimization
def toOptimize(a=0):
return - a * a
optimizer = BayesianOptimization(toOptimize,{'a': [-5,5]})
optimizer.maximize(n_iter=200)
print(optimizer.res)
Initialization
-----------------------------------------
Step | Time | Value | a |
1 | 00m00s | -22.89916 | -4.7853 |
2 | 00m00s | -1.10813 | 1.0527 |
3 | 00m00s | -0.01665 | 0.1290 |
4 | 00m00s | -4.29761 | 2.0731 |
5 | 00m00s | -0.07172 | 0.2678 |
Bayesian Optimization
-----------------------------------------
Step | Time | Value | a |
6 | 00m00s | -25.00000 | 5.0000 |
7 | 00m00s | -0.49688 | -0.7049 |
8 | 00m01s | -0.03670 | -0.1916 |
9 | 00m02s | -0.00059 | -0.0243 |
10 | 00m03s | -0.00044 | 0.0210 |
And it keeps getting slower with each iteration
from bayesianoptimization.
me too! it gets too slow after a while..
from bayesianoptimization.
Seeing same behaviour. Takes several seconds for each iteration even with a dummy target function.
from bayesianoptimization.
In fact it is the slowest optimizer of all I have ever used. And the results are worse than the ones of the faster optimizers on the same iteration count. So I personally have never used it in production.
from bayesianoptimization.
In fact it is the slowest optimizer of all I have ever used. And the results are worse than the ones of the faster optimiz3rs on the same iteration count. So I personally have never used it in production.
@KOLANICH what other optimiz3rs have you used? any of them do Bayesian optimization?
from bayesianoptimization.
I also see the same slow down behavior at around 400+ iterations with 10 parameters to being optimized. Now the 5 fold training of my model take much less time than the calculation of Bayesian optimization.
from bayesianoptimization.
Related Issues (20)
- Can I use it for timeseries optimization, like I want to come out a control trajectory(96 steps), so the input will be 96 high dimension....So two questions: 1) is it suitable for 96 dimension optimization and 2) how to pass a np.array to the function, do I have to define in X1, X2,...X96? I really appreciate for any kind help! HOT 3
- Question about whether a set of dictionary parameters can be used as independent variables in visualization. HOT 5
- Error occurs when trying to do a domain reduction HOT 6
- html docs: please review and suggest! HOT 5
- add github workflow to link github releases to pypi uploads
- settle on a docstring format and update all docstrings HOT 5
- Constrained Target Space occasionally outputs the wrong parameters for a maximum HOT 1
- Give user access to in acq_max function HOT 3
- `FloatingPointError: underflow encountered in exp` in `optimizer.maximize()` HOT 4
- Save optimizer state and load again in the Suggest-Evaluate-Register Paradigm HOT 1
- Replace custom colour implementation with colorama colours HOT 1
- Constrained optimization does not allow duplicate points HOT 3
- JSONLogger bug in Basic Tour example HOT 2
- Implement `gp_hedge` acquisition function HOT 10
- support multiple parameters HOT 2
- Values outside pbounds HOT 7
- How to specify pbounds when there are no variable names per se HOT 7
- Make n_restarts_optimizer dynamic HOT 2
- pbounds step size HOT 2
- Manually provide observed samples as init points HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bayesianoptimization.