Maschinelles Lernen für Zeitreihen - Cheatsheet
Autoregressive Modelle (AR) und ARMA/ARIMA Modelle
Definition:
Autoregressive Modelle (AR) nutzen vergangene Werte einer Zeitreihe zur Vorhersage zukünftiger Werte. ARMA kombiniert AR mit gleitendem Durchschnitt (MA). ARIMA integriert Differenzierung (I) zur Modellierung nicht stationärer Daten.
Details:
- AR-Modell: \( X_t = c + \sum_{i=1}^{p} \phi_i X_{t-i} + \epsilon_t \)
- ARMA-Modell: \[ X_t = c + \sum_{i=1}^{p} \phi_i X_{t-i} + \sum_{j=1}^{q} \theta_j \epsilon_{t-j} + \epsilon_t \]
- ARIMA-Modell: \[ (1 - B)^d X_t = c + \sum_{i=1}^{p} \phi_i (1 - B)^{d}X_{t-i} + \sum_{j=1}^{q} \theta_j \epsilon_{t-j} + \epsilon_t \]
- AR: Autoregressiver Teil (p)
- MA: Gleitender Durchschnitt (q)
- I: Differenzierung (d)
- ARIMA = AR + I + MA
- Stationarität erforderlich für AR und ARMA, nicht jedoch für ARIMA
Long Short-Term Memory (LSTM) Netze
Definition:
LSTM-Netze sind spezielle Arten von Rekurrenten Neuralen Netzen (RNN), die entwickelt wurden, um das Problem des vanishing gradient zu beheben.
Details:
- LSTM-Netze bestehen aus Speicherzellen, die Informationen über viele Zeitschritte hinweg beibehalten können.
- Jede Zelle hat drei Tore: Eingabe-, Ausgabe- und Vergangenheitswert-Tor (input, output, forget gate).
- Die Zustandsaktualisierung erfolgt nach den folgenden Gleichungen:
- Vergangenheitswert-Tor: \( f_t = \text{sigmoid}(W_f \times [h_{t-1}, x_t] + b_f) \)
- Eingabe-Tor: \( i_t = \text{sigmoid}(W_i \times [h_{t-1}, x_t] + b_i) \)
- Neue Zellzustandsvorschläge: \( \tilde{C}_t = \text{tanh}(W_C \times [h_{t-1}, x_t] + b_C) \)
- Zellzustand: \( C_t = f_t \times C_{t-1} + i_t \times \tilde{C}_t \)
- Ausgabe-Gate: \( o_t = \text{sigmoid}(W_o \times [h_{t-1}, x_t] + b_o) \)
- Aktueller Zellwert: \( h_t = o_t \times \text{tanh}(C_t) \)
Support Vector Machines (SVMs) für Zeitreihen
Definition:
Verwenden von SVMs zur Klassifikation und Regression von Zeitreihen durch Umwandlung der zeitlichen Daten in geeignete Merkmalsräume.
Details:
- SVMs arbeiten, indem sie optimale Hyperplanes zwischen Klassen finden.
- Zeitreihen oft in Vektoren umgewandelt durch Zeitfenstertechnik (Sliding Window).
- Kernel-Trick zur Handhabung nichtlinearer Trennungen: \(K(x, y) = \phi(x) \cdot \phi(y)\).
- Lagrange-Multiplikatoren zur Optimierung: \(L(\alpha) = \sum \alpha_i - \frac{1}{2} \sum \alpha_i \alpha_j y_i y_j K(x_i,x_j)\).
- SVM-Modelle brauchen Parameter wie C und \(\gamma\) zur Feinabstimmung.
- Einige wichtige Bibliotheken: 'scikit-learn', 'libsvm', 'liblinear'.
Lag-Features und differenzielles Feature-Engineering
Definition:
Lag-Features sind vergangene Werte einer Zeitreihe, die als zusätzliche Merkmale verwendet werden. Differenzielles Feature-Engineering bezieht sich auf die Erstellung neuer Features durch Differenzbildung zwischen aufeinanderfolgenden Zeitreihenwerten.
Details:
- Lag-Features: Transformation einer Zeitreihe \( y(t) \) in \( y(t-1), y(t-2), \, ... \).
- Hilfreich für Modelle, die zeitliche Abhängigkeiten nutzen (z.B. ARIMA, LSTM).
- Differenzielles Feature-Engineering: Berechnung von \( \text{diff}_k(t) = y(t) - y(t-k) \).
- Milderung von Trends und Saisonabhängigkeiten, Unterstützung der Stationarität der Daten.
Fehlermaße wie MAE, MSE und RMSE
Definition:
Fehlermaße zur Evaluierung von Prognosemodellen in der Zeitreihenanalyse.
Details:
- MAE (Mean Absolute Error): Durchschnitt der absoluten Fehler zwischen echten und vorhergesagten Werten. \[ MAE = \frac{1}{n} \sum_{i=1}^{n} |y_i - \, \hat{y}_i| \]
- MSE (Mean Squared Error): Durchschnitt der quadrierten Fehler. Betont größere Fehler. \[ MSE = \frac{1}{n} \sum_{i=1}^{n} (y_i - \, \hat{y}_i)^2 \]
- RMSE (Root Mean Squared Error): Quadratwurzel des MSE. \[ RMSE = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \, \hat{y}_i)^2} \]
Signalverarbeitung und Saisonalität
Definition:
Signalverarbeitung bezieht sich auf Techniken zur Analyse und Manipulation von Zeitreihendaten, während Saisonalität periodische Muster in den Daten beschreibt.
Details:
- Glättung: Reduzierung von Zufallsrauschen, z.B. durch gleitende Mittelwerte.
- Filterung: Trennung von Signal und Rauschen, z.B. mittels Fourier-Transformation.
- Trend: Langfristige Veränderung der Daten.
- Saisonalität: Wiederkehrende Muster in festgelegten Intervallen.
- Saisonale Dekomposition: Zerlegung der Zeitreihe in Trend, Saisonalität und Residuen.
Ensemble-Methoden und Boosting
Definition:
Ensemble-Methoden kombinieren mehrere Modelle, um die Vorhersagegenauigkeit zu verbessern. Boosting ist eine spezielle Form von Ensemble-Methoden, bei der schwache Modelle sequenziell trainiert werden, wobei jedes neue Modell die Fehler der vorherigen Modelle korrigiert.
Details:
- Boosting-Algorithmus: Adaboost, Gradient Boosting
- Gewichte der Modelle werden angepasst, um Fehler zu minimieren
- Erhöht die Robustheit und Genauigkeit
- Wichtige Parameter: Lernrate, Anzahl der Basis-Modelle
- Formel: \[ f(x) = \sum_{m=1}^M \beta_m h_m(x) \], wobei \( h_m \) schwache Modelle und \( \beta_m \) deren Gewichte sind
Recurrent Neural Networks (RNNs)
Definition:
Neurales Netz für sequenzielle Datenverarbeitung, das durch rekurrente Verbindungen Information über vorherige Zeitschritte beibehält.
Details:
- Möglichkeit der Verarbeitung von Daten zeitlicher Abhängigkeiten
- Rückkopplungen der hidden states (\textbf{h}) für Speicherung von Kontextinformationen
- Vanishing/Exploding Gradient Problem bei langen Sequenzen
- Bekannte Varianten: LSTM (Long Short-Term Memory) und GRU (Gated Recurrent Unit)