$ cd ../
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos — bash

user@devops:~$ cat README.md

N-BEATS + N-HiTS -- forecasting neuronal vs clasicos

# Descripción

Arquitecturas de NeuralForecast (Nixtla) implementadas desde cero en PyTorch, sin la libreria neuralforecast. Parte 1: panel sintetico 8 tiendas x 420 dias con tendencia, estacionalidad semanal, ciclo 90d y picos de promo (y mean 65.6). Split train/val/test con lookback 42 y horizonte 14 (904 ventanas de train, seed 42). Parte 2: baselines clasicos -- SeasonalNaive MAE 3.058, Holt-Winters 3.073, Ridge lags+Fourier 2.518. Parte 3: N-BEATS generico 3 bloques residuales backcast/forecast, 69.096 params, val MAE 2.668, holdout MAE 2.833. Parte 4: N-HiTS downsample 8/4/1 con interpolacion lineal, 21.195 params, val MAE 2.518, holdout MAE 2.790. Parte 5: N-BEATS interpretable (polinomio grado 3 + Fourier periodo 7 + remainder) 46.736 params, val MAE 2.202. Parte 6: holdout one-shot H=14 y rolling-origin 4 origenes -- ganador N-BEATS-I MAE 2.446 / rolling 2.476 (MASE 0.795, -20% vs SeasonalNaive). Hallazgo: en series cortas con estacionalidad clara el sesgo inductivo (tendencia+Fourier) gana al bloque generico; Ridge con las mismas bases es un rival serio; N-HiTS iguala casi a N-BEATS generico con 3x menos parametros. Entrenamiento CPU 4.3s + 3.1s + 3.3s. 7 visualizaciones.

# Características principales

$ Panel sintetico 8 tiendas x 420 dias: tendencia, semana, ciclo 90d y promos

$ Baselines: SeasonalNaive, Holt-Winters aditivo, Ridge lags 42 + Fourier

$ N-BEATS generico (Oreshkin 2019): 3 bloques residuales, 69.096 params, MAE 2.833

$ N-HiTS (Challu 2022): interpolacion multi-rate ds=8/4/1, 21.195 params, MAE 2.790

$ N-BEATS interpretable: stack polinomico + Fourier + remainder, MAE 2.446 (-20% vs naive)

$ Holdout H=14 + rolling-origin 4 origenes; MASE 0.795 en el ganador

$ Ridge lags+Fourier MAE 2.518: baseline lineal fuerte cuando la estacionalidad es clara

$ 7 visualizaciones: overview, seasonality, forecasts, metrics, stacks, horizonte, N-HiTS

# Galería

Terminal del proyecto
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Terminal del proyecto
Demanda 8 tiendas train/val/test
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Demanda 8 tiendas train/val/test
Estacionalidad semanal y espectro
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Estacionalidad semanal y espectro
Holdout H=14 vs clasicos
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Holdout H=14 vs clasicos
MAE sMAPE MASE
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - MAE sMAPE MASE
Stacks tendencia / Fourier / remainder
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Stacks tendencia / Fourier / remainder
Error por horizonte
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Error por horizonte
Curvas val y componentes N-HiTS
N-BEATS + N-HiTS -- forecasting neuronal vs clasicos - Curvas val y componentes N-HiTS

# Tecnologías utilizadas

Python PyTorch NumPy Pandas scikit-learn Matplotlib