-
Notifications
You must be signed in to change notification settings - Fork 312
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
best_parameters
as optimal ranges instead of single values
#320
Comments
Hi @Mikemraz! To start I recommend you take a look at the CNN tutorial on the ax website: https://ax.dev/tutorials/tune_cnn.html. We only use the Booth function for a simple example, but one can optimize almost any function. Ax does not support feature selection, so if that's what you're looking to do, that might not work. We can say for sure if you give us more information on what your search space looks like (e.g. parameters and metrics/outcomes that you hope to optimize). Feel free to also take a look at the Service API tutorial and Building blocks of Ax tutorials to better understand the kins of optimization setups we support and what we mean by search space and parameters. Let us know if this helps! |
Thanks for you response @Jakepodell ! I realized I could use any ML modles to optimize my feature space. I had a test on sklearn's implementation of logstic regression and the results looks good to me. FYI I was tring to find a feature vector (design choice) that can maximize the model output (user experience in this case). A ML model is already trained. So I mananged to use Ax to find the best design choice for me so we can make recommendations. Here is my new question, is there a way we can get each feature's value range that can still keep target high enough? You know, sometimes a fixed design choice is not feasible, and we need more flexibility. I just wonder if Ad has this feature. Thanks! |
Sorry @Mikemraz, I have a hard time following this question. Are you interested in exploring the tradeoffs between multiple outcomes of interest? I.e., perform Multi-objective_optimization? |
Hi @Balandat Sorry about the confusion. Imagine a scenario where the user experience is a function of many features, and I have already build a ML model to capture this relationship. Here I am trying to use Ax to find the feature vector(hopefully it is not a vector of fixed value but a vector of intervals) that can maximize the user experience variable. Thanks for your patience! |
So your ML model is |
@Balandat Thanks for your valuable feedback! You are right about what I was trying to do. I have already get it run with the basic optimize API, here are my concern: |
Ah, I understand the question now, thanks for clarifying! That's really interesting, I've never considered that use case before, but I see no reason why Ax couldn't be generalized to support this. Our models are learning the relationship between parameter values and objective values, so it seems reasonable that we could determine the parameter value range resulting in an objective value between [min, max], rather than the parameter value that optimizes the objective. Curious to hear @Balandat 's thoughts though! |
best_parameters
as optimal ranges instead single values
best_parameters
as optimal ranges instead single valuesbest_parameters
as optimal ranges instead of single values
We will now be tracking wishlist items / feature requests in a master issue for improved visibility: #566. Of course please feel free to still open new feature requests issues; we'll take care of thinking them through and adding them to the master issue. |
Great to hear! thanks! |
I read about Ax in a post and I found it to be very powful. But I do have a question to raise. I found the analytical model booth funciton is adopted as evaluation function in the Getting Started section. I wonder if we could use other customized models such as neural networks, GBM etc. with the goal to find the feature vector that can maximize the model output. If we can, is there a way that we directly call these models in the optimize API?
Thanks for your time.
The text was updated successfully, but these errors were encountered: