Fast Adaptive Machine Learning library for Time-Series, that lets you build, deploy and update composite models easily. An order of magnitude speed-up, combined with flexibility and rigour.
A fast Adaptive Machine Learning library for Time-Series, that lets you build, deploy and update composite models easily.
Fast Adaptive Time Series ML Engine
Explore the docs »
The Adaptive ML Engine that lets you build, deploy and update Models easily. An order of magnitude speed-up, combined with flexibility and rigour.
- 10x faster Adaptive Backtesting - What does that mean?
- Composite Models made Adaptive - What does that mean?
- Distributed computing - Why is this important?
- Update deployed models (coming in May) - Why is this important?
python >= 3.8and
Install from pypi:
pip install fold-core
You can quickly train your chosen models and get predictions by running:
from sklearn.ensemble import RandomForestRegressor from statsforecast.models import ARIMA from fold import ExpandingWindowSplitter, train_evaluate from fold.composites import Ensemble from fold.transformations import OnlyPredictions from fold.utils.dataset import get_preprocessed_dataset X, y = get_preprocessed_dataset( "weather/historical_hourly_la", target_col="temperature", shorten=1000 ) pipeline = [ Ensemble( [ RandomForestRegressor(), ARIMA(order=(1, 1, 0)), ] ), OnlyPredictions(), ] splitter = ExpandingWindowSplitter(initial_train_window=0.2, step=0.2) scorecard, prediction, trained_pipelines = train_evaluate(pipeline, X, y, splitter)
Thinking of using
fold? We'd love to hear about your use case and help, please book a free 30-min call with us!
(If you install
krisi by running
pip install krisi you get an extended report back, rather than a single metric.)
Fold is different
Adaptive Models and Backtesting at lightning speed.
→ fold allows to simulate and evaluate your models like they would have performed, in reality/when deployed, with clever use of paralellization and design.
Create composite models: ensembles, hybrids, stacking pipelines, easily.
→ Underutilized, but the easiest, fastest way to increase performance of your Time Series models.
Built with Distributed Computing in mind.
→ Deploy your research and development pipelines to a cluster with
ray, and use
modinto handle out-of-memory datasets (full support for modin is coming in April).
Bridging the gap between Online and Mini-Batch learning.
→ Mix and match
xgboostwith ARIMA, in a single pipeline. Boost your model's accuracy by updating them on every timestamp, if desired.
Update your deployed models, easily, as new data flows in.
→ Real world is not static. Let your models adapt, without the need to re-train from scratch.
Examples, Walkthroughs and Blog Posts
|Name||Type||Dataset Type||Docs Link||Colab|
|⚡️ Core Walkthrough||Walkthrough||Energy||Notebook||Colab|
|🚄 Speed Comparison of Fold to other libraries||Walkthrough||Weather||Notebook||Colab|
|📚 Example Collection||Example||Weather & Synthetic||Collection Link||-|
|🖋️ Why we ended up building an Adaptive ML engine for Time Series||Blog||Public Release Blog Post||Blog post on Applied Exploration||-|
- Supports both Regression and Classification tasks.
- Online and Mini-batch learning.
- Feature selection and other transformations on an expanding/rolling window basis
- Use any scikit-learn/tabular model natively!
- Use any univariate or sequence models (wrappers provided in fold-wrappers).
- Use any Deep Learning Time Series models (wrappers provided in fold-wrappers).
- Super easy syntax!
- Probabilistic foreacasts (currently, for Classification, full support coming in April).
- Hyperparemeter optimization / Model selection. (coming in early April!)
What is Adaptive Backtesting?
It's like classical Backtesting / Time Series Cross-Validation, plus: Inside a test window, and during deployment, fold provides a way for models to update their parameters or access the last value. Learn more
Our Open-core Time Series Toolkit
If you want to try them out, we'd love to hear about your use case and help, please book a free 30-min call with us!
Submit an issue or reach out to us on info at dream-faster.ai for any inquiries.
Licence & Usage
We want to bring much-needed transparency, speed and rigour to the process of creating Time Series ML pipelines, while also building a sustainable business, that can support the ecosystem in the long-term. Fold's licence is inbetween source-available and a traditional commercial software licence. It requires a paid licence for any commercial use, after the initial, 30 day trial period.
We also want to contribute to open research by giving free access to non-commercial, research use of
- No intermittent time series support, very limited support for missing values.
- No hierarchical time series support.