Validation croisée sans mélange aléatoire
À présent, réexécutez l’ajustement de votre modèle en utilisant une validation croisée par blocs (sans mélanger tous les points de données). Dans ce cas, les points temporels voisins resteront proches les uns des autres. À votre avis, à quoi ressembleront les prédictions du modèle dans chaque boucle de validation croisée ?
Une instance de l’objet model de régression linéaire est disponible dans votre environnement de travail. Les tableaux X et y (données d’entraînement) sont également disponibles.
Cet exercice fait partie du cours
Machine Learning for Time Series Data in Python
Instructions
- Instanciez un autre objet de validation croisée, cette fois avec une validation croisée KFold à 10 divisions et sans mélange aléatoire.
- Itérez sur cet objet pour ajuster un modèle avec les indices d’entraînement et générer des prédictions avec les indices de test.
- Visualisez les prédictions à travers les divisions de validation croisée à l’aide de la fonction utilitaire (
visualize_predictions()) fournie.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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)