NeuralForecast: Deep Learning for Time Series Forecasting

3.1.7 · active · verified Thu Apr 16

NeuralForecast is an active Python library (current version 3.1.7) providing a comprehensive suite of state-of-the-art deep learning models for time series forecasting. It emphasizes performance, usability, and robustness, offering implementations of various architectures from classic RNNs to modern transformers. The library maintains a frequent release cadence, with several patch releases within major versions addressing features, bug fixes, and documentation improvements.

Common errors

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to load a sample dataset, define a NeuralForecast model (NBEATS in this case), fit it to the data, and generate predictions. The input DataFrame must contain 'unique_id', 'ds' (datestamp), and 'y' (target variable) columns. The `freq` parameter is crucial for time series interpretation.

import pandas as pd
from neuralforecast import NeuralForecast
from neuralforecast.models import NBEATS
from neuralforecast.utils import AirPassengersDF

# 1. Load data
Y_df = AirPassengersDF # Example dataset with 'unique_id', 'ds', 'y' columns

# 2. Define forecasting horizon
horizon = 12

# 3. Instantiate and fit model
nf = NeuralForecast(
    models=[NBEATS(input_size=2 * horizon, h=horizon, max_steps=500)],
    freq='ME' # Monthly End frequency
)
nf.fit(df=Y_df)

# 4. Make predictions
Y_hat_df = nf.predict()

print(Y_hat_df.head())

view raw JSON →