-
Notifications
You must be signed in to change notification settings - Fork 292
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
[ADD] fit ensemble #366
Open
ravinkohli
wants to merge
6
commits into
automl:development
Choose a base branch
from
ravinkohli:add_fit_ensemble
base: development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
[ADD] fit ensemble #366
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Codecov Report
@@ Coverage Diff @@
## development #366 +/- ##
================================================
- Coverage 85.50% 27.84% -57.66%
================================================
Files 231 230 -1
Lines 16303 16331 +28
Branches 3009 3022 +13
================================================
- Hits 13940 4548 -9392
- Misses 1524 11781 +10257
+ Partials 839 2 -837
Continue to review full report at Codecov.
|
ravinkohli
force-pushed
the
add_fit_ensemble
branch
from
February 9, 2022 11:34
74bb98c
to
89d6d35
Compare
ravinkohli
force-pushed
the
add_fit_ensemble
branch
from
July 21, 2022 09:23
89d6d35
to
200aa7f
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR enables fitting an ensemble after
search
has finished. It also fixes issue #299.Types of changes
Note that a Pull Request should only contain one of refactoring, new features or documentation changes.
Please separate these changes and send us individual PRs for each.
For more information on how to create a good pull request, please refer to The anatomy of a perfect pull request.
Checklist:
Description
This PR adds a function called
fit_ensemble
which can create an ensemble aftersearch
has finished. It uses the same backend working directory as the search and builds an ensemble based on the predictions of models saved duringsearch
. Also, as ensemble creation is now a separate process, it does not make sense to instantiate a task tied with anensemble_size
andensemble_nbest
. Therefore, these parameters are no longer class parameters, instead, they are passed to thesearch
function orfit_ensemble
function.Additionally, as raised in #299 we raise a warning that ensemble could not be built regardless if the user did not want it in the first place.
Motivation and Context
This PR enables the ability to fit an ensemble post hoc. This enables the ability to create multiple ensembles with the same algorithms found in search, it can also save time in the search by removing the overhead with fitting the ensemble as it is passed as a callback to smac. Moreover, in the future, we can also enable creating an ensembles stored in disk with a new task object.
How has this been tested?
As ensemble fitting was already being tested in the
test_api
, I have added tests to a new function_init_ensemble_builder
. Moreover, with the posthot_ensemble_fit example, it ensures a smooth function of search withensemble_size=0
.