-
Notifications
You must be signed in to change notification settings - Fork 42
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
[ENH] interface probabilistic regressors from ngboost
package
#135
Comments
Interesting! Now about something that's partly funny and partly not funny... I'm reasonably certain that Ng et al know of both the methodological paper and the software interface designs, but still don't cite them... that's not very nice. Anyway, we should develop |
Yes, 6.4 of the above mentioned paper deals with a similar concept. |
well, if you want to use |
Yes, will discuss about this with my mentor. Thanks |
I'm very interested in the capability discussed here. It doesn't appear like there has been any progress here. Would you correct me if that is in fact not the case? Thank you! |
actually yes! We've been re-working the probabilistic forecasting interface: This will enable using probabilistic supervised learners in compositors like Want to help work on this, @drackham ? It's a bit of an engineering project, but there's a step-by-step roadmap. Would be much appreciated! We'll probably move this a bit over the Easter holdays where the volunteer contributors tend to have more time. What would also be helpful is testing the probabilistic forecasting interface and reporting your experiences or any design suggestions (in sktime/sktime#4359). Will be released experimental in 0.17.0 and full in 0.18.0. |
speaking of which, @frthjf, are you still around? I would like to move the probabilistic interface into That would be step number 7 or 8 in sktime/sktime#4359 (not there yet, but see context above). |
@fkiraly thank you! I discovered sktime recently, and these types of models are not really in my core areas of competency, so I'd likely be unable to contribute effectively. That said, I'll take a look at the contribution documentation and see if my apprehension is unwarranted. I'll also take a look at the probabilistic forecasting interface and report back. Thanks again! |
@fkiraly I am still around :-) Just to clarify, do I understand correctly that the plan is to resurrect the |
Nice to hear of you again! Let's catch up, discord perhaps?
Yes! For now, I've been working in the The design is a mix of I'd like to move it out to |
For comments, the topical issue is here, @frthjf: (this issue is about a specific probabilistic forecaster) |
I see, in that case, why move this out of |
(will continue on sktime/sktime#4359 for architecture discussion) |
The |
FYI @drackham, @satya-pattnaik, @frthjf - I have updated the issue with instructions on "how-to". Together with the Would be great if one of you would like to implement this, I'm happy to advise! Also FYI @Alex-JG3, @Ram0nB, in case one of you is interested, this intersects with your previous contribution topics. |
ngboost
package
Have you considered XGBoostLSS and LightGBMLSS as well? Both offer great flexibility and are based on the two most commonly used tabular data boosting machines. Yet, there is no sklearn API available, but has a PR on this. Shall I open a new issue for this? |
Excellent suggestion, @KiwiAthlete - opened an issue here: #135 |
I'll try to start working on adding an interface of |
Great! I notice I linked the wrong issue, fixed the link. |
Resolves #135 - adds a `NGBoostRegressor`
Update by @fkiraly - we should interface
ngboost
regressors as probabilistic supervised (tabular) regressors.As discussed in the below, this should be an
skpro
regressor, which in turn can be used insktime
reduction forecasters (such asYfromX
). The original request was for usingngboost
as a forecaster insktime
, but this is a tabular proba regressor that needs to go through an additional reduction step (which is now implemented insktime
).It should be straightforward to interface
ngboost
using the probabilistic regressor extension template:https://github.com/sktime/skpro/blob/main/extension_templates/regression.py
so adding it as a good first issue.
The main techincal concern might be translating the
ngboost
probability distributions intoskpro
probability distributions, but that should also be addressable with a lean adaptation layer (personally, I would add that adaptation in an adapter utility subpackage inregression.ngboost
).Original request below.
Is your feature request related to a problem? Please describe.
Can we build a Probabilistic Forecaster using Ngboost. A Probabilistic regression like Ngboost method will give us the confidence intervals out of the box unlike others where we need a heuristic(like quantile loss) to get the values of Conf/Pred Ints.
Describe the solution you'd like
A rough sketch:
Describe alternatives you've considered
Using Xgboost/LightGBM with quantile loss makes the calculation of prediction intervals inefficient.
Additional context
Ngboost Doc- https://stanfordmlgroup.github.io/projects/ngboost/
The text was updated successfully, but these errors were encountered: