Add probabilistic ML dashboard (React + FastAPI)#1046
Open
Shristimishra980 wants to merge 1 commit intosktime:mainfrom
Open
Add probabilistic ML dashboard (React + FastAPI)#1046Shristimishra980 wants to merge 1 commit intosktime:mainfrom
Shristimishra980 wants to merge 1 commit intosktime:mainfrom
Conversation
This file contains hidden or 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
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.
Reference Issues/PRs
What does this implement/fix? Explain your changes.
This PR introduces a brand new full-stack dashboard for the skpro library. This dashboard allows users to interactively explore, visualize, and compare the uncertainty estimates of different probabilistic models. The dashboard includes:
Backend (skpro/dashboard/backend/): A FastAPI application that serves the available models (
main.py, models.py) and handles model fitting and prediction with uncertainty intervals via API endpoints (/upload, /predict, /compare).
Frontend (skpro/dashboard/frontend/): A React application utilizing recharts to render confidence bands, prediction charts, and side-by-side model metric comparisons.
Sample Datasets: A set of sample CSV files to easily test the application functionality.
Does your contribution introduce a new dependency? If yes, which one?
Yes, but they are isolated. The dashboard relies on fastapi, uvicorn, pandas, and react/npm for the frontend. These dependencies are strictly isolated inside the skpro/dashboard folder and do not add to the external dependencies of the core skpro package.
What should a reviewer concentrate their feedback on?
Reviewing the structural placement of the dashboard/ folder. If the core team prefers this to be a standalone repository (e.g. sktime/skpro-dashboard), let me know!
The implementations and API wrappers around BayesianRidge, GaussianProcessRegressor, QuantileRegressor, and GradientBoostingRegressor in models.py Feedback on visual layout for the React frontend.
Did you add any tests for the change?
There are no automated unit tests included in this PR due to its nature as a standalone dashboard. Verified locally through end-to-end manual testing of:
Starting up backend and frontend simultaneously.
Uploading sample datasets and evaluating predictions.
Any other comments?
N/A
PR checklist
For all contributions
How to: add yourself to the all-contributors file in the
skproroot directory (not theCONTRIBUTORS.md). Common badges:code- fixing a bug, or adding code logic.doc- writing or improving documentation or docstrings.bug- reporting or diagnosing a bug (get this pluscodeif you also fixed the bug in the PR).maintenance- CI, test framework, release.See here for full badge reference
For new estimators
docs/source/api_reference/taskname.rst, follow the pattern.Examplessection.python_dependenciestag and ensureddependency isolation, see the estimator dependencies guide.