automl / automl/RoBO

Accessing optimizer's internal state

Open
#97 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
495
Forks
129
PR merge metrics
No merged PRs in 30d

Description

Currently optimization process is a fully-automatic blackbox. I mean, you call fmin.bayes_optimization with appropriate arguments, wait for some time and get the answers together with various running stats, like points tried, incumbents and so on. By the time you get the results, optimizer internal state is gone, so various interesting stuff like acquisition function behavior can't be analyzed.

What do you think about giving the option for client code to control optimization loop? For example, splitting BaseSolver.run into BaseSolver.start and BaseSolver.step, so interested users could write
```
opt.start()
for k in range(num_iters):
opt.step()

```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading fmin.bayes_optimization and BaseSolver.run, which the issue identifies as the current optimization entry points. Trace how running statistics and optimizer state are produced and discarded. Done means client code can start optimization, advance it step by step, and inspect state between steps for visualization or analysis.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.