GithubHelp home page GithubHelp logo

Comments (4)

mgarrard avatar mgarrard commented on April 28, 2024

Hi @cyrilmyself -- thanks for reaching out! Could you provide a bit more context and detail about your usecase, goals, parameters, and objective/constraints?

from ax.

cyrilmyself avatar cyrilmyself commented on April 28, 2024

I use botorch to run Bandit Optimization as https://ax.dev/tutorials/factorial.html,what i want to know is when should i
stop the optimization。if i did not stop,the experiment will run forever。So how to set the condition of stopping the bandit optimization

from ax.

mgarrard avatar mgarrard commented on April 28, 2024

Hi @cyrilmyself, usually folks have a few different ways that they assess when to stop the optimization, but the underlying thought process is the same: run trials, typically in batches, and then assess if there is convergence/plateauing. Eventually, there are diminishing returns for running additional trials, and this is usually a good place to stop the experiment. Also, typically folks are constrained on the number of trials they can feasibly run, so that is another consideration. Leveraging visualizations is a great and intuitive tool for deciding when to complete the experiment.

In the case of the Bandit Optimization tutorial, you can see the rollout process visualization shows that as more trials are ran, there are only 4 arms that are still being considered, down from over 20 arms in the first trial. We choose to run 4 trials in this code block. For a learning experience, it could be interesting to play around with running more or less trials by modifying that code block to see how number of trials effects how many arms are still being considered. In practice, using some balancing between the number of trials you are able to run, and the output after running x number of trials to determine if you should continue the optimization is a good way to go about it.

In other setups, such as Hyperparmaeter Optimization for Pytorch, you can plot the optimization trace to identify when there is a plateau in model improvement given more iterations. And we also offer more advanced global stopping strategies that you can implement to more "smartly" stop your experiment early if additional trials are unlikely to be beneficial.

Is this helpful?

from ax.

mgarrard avatar mgarrard commented on April 28, 2024

Closing the issue, please feel free to re-reach out if something remains unclear. Have a great weekend @cyrilmyself :)

from ax.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.