Skip to content
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

[BUG] Regression Ensemble model specific documentation #1600

Closed
bgonzalezfractal opened this issue Feb 27, 2023 · 7 comments · Fixed by #1692
Closed

[BUG] Regression Ensemble model specific documentation #1600

bgonzalezfractal opened this issue Feb 27, 2023 · 7 comments · Fixed by #1692
Assignees
Labels
documentation Creating or improving documentation improvement New feature or improvement

Comments

@bgonzalezfractal
Copy link

Describe the bug
As of today, as an user we can't understand completely how RegressionEnsemble model works, is this a parallel or sequential ensemble? Just wondering if we could get a little bit of information. Are these learned dependent or independent?

To Reproduce
The documentation says "Abstract base class for ensemble models. Ensemble models take in a list of forecasting models and ensemble their predictions to make a single one according to the rule defined by their ensemble() method.", how are these rules related to the topic above?

Expected behavior
A good idea would be to select the type of ensemble, but that could mean extra work, so I suggest just clarifying the documentation and maybe write an article.

System (please complete the following information):

  • Python version: 3.9
  • darts version 0.14.0

Additional context
I can see in the training process its probably parallel ensemble. Thanks for the amazing library, we've already had really strong business cases!

@bgonzalezfractal bgonzalezfractal added bug Something isn't working triage Issue waiting for triaging labels Feb 27, 2023
@madtoinou madtoinou added improvement New feature or improvement documentation Creating or improving documentation and removed bug Something isn't working triage Issue waiting for triaging labels Feb 27, 2023
@dennisbader
Copy link
Collaborator

It is done sequentially, meaning first it fits all forecasting_models, then ensemble model is fit on the predictions of forecasting_models.

About the docs: you were probably looking at EnsembleModel, which is the base class. Here are the docs for RegressionEnsembleModel with the description:

Use a regression model for ensembling individual models’ predictions

@bgonzalezfractal
Copy link
Author

bgonzalezfractal commented Mar 2, 2023

Thanks @dennisbader, by the way:
"Use a regression model for ensembling individual models’ predictions."
This is not clarifying the ensemble type, it could literally mean parallel o boosting. Actually if you say each model is fitted and then the ensemble model I think you mean parallel ensemble or bagging, where models are independent from each other, sequentially means that each models predictions will help the next model bias and variance. Please could you clarify your comment and also, clarify the docs, as I said before, your quote is not explainable, you are just defining an ensemble.

image

@dennisbader
Copy link
Collaborator

dennisbader commented Mar 3, 2023

You are right in the Ensemble domain it is parallel ensemble learning. What I meant to say with sequential is that first all base learners/level-0 models are fit independently, and afterwards (my sequential) their predictions/forecasts are used as features in a "meta"/level-1 model to generate the final predictions/forecasts.

The RegressionEnsembleModel actually uses the stacking technique, similar to how described here:
image

@bgonzalezfractal
Copy link
Author

Thanks a lot @dennisbader, clear and understood, I think the community will benefit from having this documented in the Regression Ensemble Model though.

@dennisbader
Copy link
Collaborator

@bgonzalezfractal, agreed.
Would you be willing to contribute to this?

@bgonzalezfractal
Copy link
Author

@dennisbader Sure, I'll find sometime in the coming weeks to improve the docs.

@madtoinou
Copy link
Collaborator

Reopening this issue to be linked in the PR improving the RegressionEnsembleModel's documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Creating or improving documentation improvement New feature or improvement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants