Cross-validatie zonder shufflen
Voer je modelfit nu opnieuw uit met block cross-validatie (zonder alle datapunten te shufflen). In dit geval blijven naburige tijdspunten dicht bij elkaar. Hoe denk je dat de modelvoorspellingen eruitzien in elke cross-validatielus?
Een instantie van het Linear regression-model object is beschikbaar in je werkruimte. Ook de arrays X en y (trainingsdata) zijn beschikbaar.
Deze oefening maakt deel uit van de cursus
Machine Learning voor tijdreeksgegevens in Python
Oefeninstructies
- Maak nog een cross-validation-object aan, dit keer met KFold cross-validatie met 10 splits en zonder shufflen.
- Itereer hierover om een model te fitten met de trainingsindices en genereer voorspellingen met de testindices.
- Visualiseer de voorspellingen over de CV-splits met de hulpfunctie (
visualize_predictions()) die we hebben meegeleverd.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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)