Utilizzare gli indici di KFold
Hai già creato splits, che contiene gli indici per il dataset candy-data per eseguire una cross-validation a 5 fold. Per ottenere una stima migliore di come si comporterà su nuovi dati il modello Random Forest di un collega, vuoi eseguire questo modello sui cinque diversi indici di training e validazione che hai appena creato.
In questo esercizio userai questi indici per verificare l'accuratezza del modello usando i cinque diversi split. Ti è stato fornito un ciclo for per aiutarti in questo processo.
Questo esercizio fa parte del corso
Validazione dei modelli in Python
Istruzioni dell'esercizio
- Usa
train_indexeval_indexper richiamare gli indici corretti diXeyquando crei i dati di training e di validazione. - Esegui il fit di
rfcusando il dataset di training - Usa
rfcper creare le previsioni sul dataset di validazione e stampa l'accuratezza di validazione
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
rfc = RandomForestRegressor(n_estimators=25, random_state=1111)
# Access the training and validation indices of splits
for train_index, val_index in splits:
# Setup the training and validation data
X_train, y_train = X[____], y[____]
X_val, y_val = X[____], y[____]
# Fit the random forest model
rfc.____(____, ____)
# Make predictions, and print the accuracy
predictions = rfc.____(____)
print("Split accuracy: " + str(mean_squared_error(y_val, predictions)))