Leave-one-out-cross-validation
Imagina que tu chuche favorita no está en el conjunto de datos de caramelos y te interesa saber su popularidad. Usar validación cruzada de 5 pliegues solo entrenará con el 80% de los datos cada vez. Pero el conjunto de datos de caramelos solo tiene 85 filas, y dejar fuera el 20% podría perjudicar nuestro modelo. En cambio, usar leave-one-out-cross-validation nos permite aprovechar al máximo un conjunto de datos limitado y te dará la mejor estimación de la popularidad de tu chuche favorita.
En este ejercicio, usarás cross_val_score() para realizar LOOCV.
Este ejercicio forma parte del curso
Validación de modelos en Python
Instrucciones del ejercicio
- Crea un "scorer" usando
mean_absolute_errorpara que lo usecross_val_score(). - Completa
cross_val_score()para que utilice el modelorfr, el nuevomae_scorery LOOCV. - Imprime la media y la desviación estándar de
scoresusandonumpy(cargado comonp).
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
from sklearn.metrics import mean_absolute_error, make_scorer
# Create scorer
mae_scorer = ____(____)
rfr = RandomForestRegressor(n_estimators=15, random_state=1111)
# Implement LOOCV
scores = cross_val_score(____, X=X, y=y, cv=____, scoring=____)
# Print the mean and standard deviation
print("The mean of the errors is: %s." % np.____(____))
print("The standard deviation of the errors is: %s." % np.____(____))