Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does simple support noisy functions? #4

Open
thomasahle opened this issue Sep 4, 2019 · 2 comments
Open

Does simple support noisy functions? #4

thomasahle opened this issue Sep 4, 2019 · 2 comments

Comments

@thomasahle
Copy link

Thank you for the great tool! Baysian optimization really is very slow.

One thing I'm unsure about from the readme is whether Simple assumes that calling f(x) once gives the true value of the function, or if it still works if f(x) is heavily noisy, say returns a random value 95% of the time?

@danuker
Copy link

danuker commented Jun 25, 2022

If the noise is a large component of the function, as opposed to the signal, my guess is that the algorithm will have more trouble finding global maxima, as the acquisition function will have a large random component.

But that is true for every optimization algorithm.

@danuker
Copy link

danuker commented Jun 25, 2022

I tried out renderAlgorithm from Animations.py with the following new function adding high-frequency cosines to griewank:

def griewank_random(vector):
	noise = math.cos(vector[0] * 1000) + math.cos(vector[1] * 1000)
	return griewank(vector) + noise - 2

Here is the result (rendering took 10 minutes on my old laptop):
animation-noisy

See how it is very difficult to reach very close to the global maximum, because the noise confuses the algorithm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants