mikekeith52/scalecast
The practitioner's forecasting library
What it solves
Scalecast simplifies the process of time series forecasting by providing a uniform interface for diverse machine learning models. It addresses common pain points such as the difficulty of setting up complex models like LSTMs, handling missing values, applying dynamic transformations to extract signals, and performing rigorous model validation and backtesting.
How it works
The library centers around the Forecaster and MVForecaster (multivariate) objects, which encapsulate data, predictions, and metrics. It integrates models from multiple libraries including scikit-learn, statsmodels, and TensorFlow. Key workflows include:
- Automated Selection: Tools for auto-selecting lags, trends, and seasonality.
- Hyperparameter Tuning: Grid search combined with time series cross-validation.
- Pipelines: Integrated sequences for data transformation, forecasting, and reverting transformations.
- Model Stacking: Ability to combine predictions from multiple models (e.g., LSTM, Prophet, ARIMA) into a final ensemble.
- Transfer Learning: Training a model on one series and applying it to another.
Who it’s for
Scalecast is designed for data scientists, academic researchers, and ML engineers working in production or sandbox environments who need to experiment with and validate multiple time series forecasting models quickly.
Highlights
- Unified API: Use a single interface to test models from scikit-learn, TensorFlow, and other specialized forecasting libraries.
- Simplified LSTM: Drastically reduces the boilerplate code required to implement LSTM networks for time series.
- Advanced Validation: Built-in support for rolling time series cross-validation and conformal confidence intervals.
- End-to-End Pipelines: Supports full pipelines from optimal transformation selection to backtesting metrics.
- Multivariate Support: Capability to forecast multiple series simultaneously using
MVForecaster.
Related
- Project
- Project
- Project
- Project
- Project