Cross-validation senza rimescolamento
Ora riesegui l'addestramento del modello usando la block cross-validation (senza rimescolare tutti i punti dati). In questo modo, i punti temporali vicini resteranno raggruppati. Secondo te, come appariranno le previsioni del modello in ciascun ciclo di cross-validation?
Nel tuo workspace è disponibile un'istanza del modello di regressione lineare model. Sono disponibili anche gli array X e y (dati di training).
Questo esercizio fa parte del corso
Machine Learning per dati di serie temporali in Python
Istruzioni dell'esercizio
- Istanzia un altro oggetto di cross-validation, questa volta usando KFold con 10 suddivisioni e senza rimescolamento.
- Itera su questo oggetto per addestrare un modello usando gli indici di training e genera le previsioni usando gli indici di test.
- Visualizza le previsioni attraverso gli split di CV usando la funzione di supporto (
visualize_predictions()) che ti abbiamo fornito.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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)