Cross-Validation ohne Mischen
Führe jetzt das Modell-Fitting erneut mit Block-Cross-Validation aus (ohne alle Datenpunkte zu mischen). Dabei bleiben benachbarte Zeitpunkte dicht beieinander. Wie denkst du, werden die Modellvorhersagen in jeder Cross-Validation-Schleife aussehen?
Eine Instanz des linearen Regressions-model-Objekts steht in deinem Workspace bereit. Außerdem sind die Arrays X und y (Trainingsdaten) ebenfalls verfügbar.
Diese Übung ist Teil des Kurses
<Kurs>Maschinelles Lernen für Zeitreihendaten in Python</Kurs>Übungsanweisungen
- Instanziiere ein weiteres Cross-Validation-Objekt, diesmal mit KFold-Cross-Validation mit 10 Splits und ohne Mischen.
- Iteriere darüber, um mit den Trainingsindizes ein Modell zu fitten und mit den Testindizes Vorhersagen zu erzeugen.
- Visualisiere die Vorhersagen über die CV-Splits hinweg mit der bereitgestellten Hilfsfunktion (
visualize_predictions()).
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Create KFold cross-validation object
from sklearn.model_selection import KFold
cv = ____(n_splits=____, shuffle=____)
# Iterate through CV splits
results = []
for tr, tt in cv.split(X, y):
# Fit the model on training data
model.fit(____)
# Generate predictions on the test data and collect
prediction = model.predict(____)
results.append((prediction, tt))
# Custom function to quickly visualize predictions
visualize_predictions(results)