Introducing NeuralForecast
NeuralForecast is an innovative library offering a robust collection of neural forecasting models. These models are designed to enhance forecasting accuracy, usability, and performance, providing users with cutting-edge tools to predict various time series data. The library is developed by Nixtla, a community committed to advancing forecasting technologies.
Installation
Getting started with NeuralForecast is straightforward. Users can install the library using Python's pip package manager by simply running:
pip install neuralforecast
Alternatively, it can be installed via conda with:
conda install -c conda-forge neuralforecast
For more detailed installation instructions, users can visit the Installation Guide.
Quick Start
NeuralForecast is designed for ease of use, even for those new to neural forecasting. Here's a minimal example to get started:
from neuralforecast import NeuralForecast
from neuralforecast.models import NBEATS
from neuralforecast.utils import AirPassengersDF
nf = NeuralForecast(
models=[NBEATS(input_size=24, h=12, max_steps=100)],
freq='M'
)
nf.fit(df=AirPassengersDF)
nf.predict()
This simplicity in application ensures that users can quickly implement forecasting models and receive predictions with minimal setup.
Why NeuralForecast?
The motivation behind NeuralForecast is rooted in the belief that neural forecasting methods can significantly boost the accuracy and efficiency of forecasting processes. However, existing tools are often complex and computationally expensive. NeuralForecast addresses these challenges by offering a library of well-optimized models that are both efficient and user-friendly.
Features
NeuralForecast comes packed with numerous features, including:
- Over 30 state-of-the-art forecasting models.
- Support for exogenous variables and static covariates.
- Methods for interpreting trends, seasonality, and other components.
- Probabilistic forecasting using quantile loss and parametric distributions.
- Automatic model selection with hyperparameter tuning.
- Familiar sklearn-like syntax:
.fit
and.predict
.
Highlights
Key highlights of NeuralForecast include the official implementation of the NHITS
model, which was featured in the AAAI 2023 publication, and the NBEATSx
model, published by the International Journal of Forecasting. The library also integrates with Ray
and Optuna
for automatic hyperparameter optimization, and supports transfer learning, allowing users to predict with minimal historical data.
Examples and Guides
For users wanting to dive deeper, the documentation page provides comprehensive examples and tutorials. These include:
- Automatic Hyperparameter Optimization: Learn how to optimize model parameters efficiently.
- Exogenous Regressors: Discover how to incorporate additional variables into your models.
- Transformer Models: Explore forecasting with various state-of-the-art Transformers models.
- Hierarchical Forecasting: Techniques for forecasting series with sparse data.
- Adding Your Own Model: Guidance on integrating custom models into the library.
Contribution and Support
NeuralForecast thrives on community contributions. Those interested in contributing can refer to the contribution guidelines. For support or to discuss any queries, users can join the community on Slack.
NeuralForecast represents an exciting step forward in the field of neural-based forecasting, offering powerful tools for both researchers and practitioners to harness the predictive potential of neural networks.