Comments (4)
So what you're looking at is a hierarchical search space. We have some (basic) support for this (
Lines 515 to 516 in fcc5178
Line 437 in fcc5178
@saitcakmak, @dme65 do you have a sense of this?
from ax.
I don't know how well HSS would interact with SEBO for this use case. Under the hood, the acquisition function will be optimized in the flattened space without fixing the values of x2 & x3, so these will be included in the sparsity computations as well.
Since the conditional structure here is super simple, you could try a manual approach here. Let Ax generate a candidate with all three parameters optimized and compare the acquisition value of this candidate to x1=x2=x3=0. You can then evaluate the one that performs better. But this would not scale too well beyond a few parameters. You could also do similar things using the fixed_features
argument, which would let you fix x2=x3=0
and optimize x1
alone while generating the candidate.
Fixed features: https://github.com/facebook/Ax/blob/main/ax/modelbridge/base.py#L753-L755
Checking acquisition value: https://github.com/facebook/Ax/blob/main/ax/modelbridge/torch.py#L463
from ax.
Assuming the target_point
in SEBO is 0, this isn't going to work out of the box. The main issue is that x1=0
implies x2=x3=0
needs to be incorporated into the sparsity objective (penalty) and we don't expose any easy ways of doing that.
Your best bet is probably to find a way to optimize the acquisition function for each path in the hierarchical search space structure and then pick the best (this is what @saitcakmak suggested above). One thing to watch out for in that setting is that you may end up with x1=0 but not x2=x3=0 in the case where you optimize all parameters.
from ax.
@dme65 @saitcakmak @Balandat Thank you so much for your helpful inputs. When I use SEBO to optimize all parameters, it works well for most of the time and sometimes may have results with x1 = 0 but not x2 = x3 = 0. (main issue remaining for my problem) I will try to study more on this.
from ax.
Related Issues (20)
- Out of Memory crash issue HOT 6
- "Hyperparameter Optimization via Raytune" link in website is broken. HOT 2
- Using `evaluate_acquisition_function` on `AxClient` causes subsequent optimziation errors HOT 2
- Question : modifications of compute_posterior_pareto_frontier HOT 2
- Tracking of auxiliary metrics HOT 2
- `qMaxValueEntropy` doesn't seem to work with `ObjectiveProperties(minimize=True)` HOT 4
- when should we end the Bandit Optimization HOT 4
- Nontrivial parameter constraints HOT 2
- Can't control arguments in fit_gpytorch_mll under the hood. Getting ABNORMAL_TERMINATION_IN_LNSRCH warning HOT 1
- Different Errors when initializing my loop with Service API and Developer API HOT 7
- `_random_seed` not retained when using `ax_client.save_to_json_file()` and `AxClient.load_from_json_file()` HOT 2
- Tutorial Request: Deploying Runners on Clusters, Debugging Runners/Schedulers HOT 4
- Issue with tolerance for floating point and its relevance when using log_scale = True HOT 7
- Question: does Ax support working with Tensorflow models? HOT 2
- Feature Request: Conditional Parameter Constraints HOT 5
- Questions about define how to evaluate HOT 3
- get_countour_plot() not plotting all trials HOT 4
- Error: A list of 'ChoiceParameter' is not iterable HOT 4
- [Bug] Generation Strategy equality check error without call to repr HOT 1
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 ax.