Bevor komplexe Modelle eingesetzt werden, sollten immer einfache Baseline-Modelle definiert werden.
Baselines beantworten die Frage:
Ist mein Modell wirklich besser als eine einfache, nachvollziehbare Strategie?
Merke
Ein komplexes Modell ist nur dann sinnvoll, wenn es robuste Baselines klar übertrifft.
9.1 8.1 Beispielzeitreihe
import numpy as npimport pandas as pdimport matplotlib.pyplot as pltrng = np.random.default_rng(123)t = pd.date_range("2025-01-01", periods=24*14, freq="H")trend = np.linspace(0, 2, len(t))season =0.9* np.sin(2*np.pi*(t.hour)/24)noise =0.3* rng.normal(size=len(t))s = pd.Series(20+ trend + season + noise, index=t, name="signal")s.plot(title="Zeitreihe für Forecasting")plt.show()
/var/folders/p_/ks3trxjx0jd839_g4g0vm4nc0000gn/T/ipykernel_19421/1656542722.py:7: FutureWarning: 'H' is deprecated and will be removed in a future version, please use 'h' instead.
t = pd.date_range("2025-01-01", periods=24*14, freq="H")
9.2 8.2 Train-Test-Split
Wir verwenden 80% der Daten für Training und 20% für Test.