Leave-one-out cross-validation
Vamos supor que seu doce favorito não esteja no conjunto de dados de doces e que você queira saber a popularidade dele. Usar validação cruzada com 5 folds treina apenas 80% dos dados por vez. No entanto, o conjunto de dados de doces tem somente 85 linhas e deixar 20% de fora pode prejudicar nosso modelo. Já a leave-one-out cross-validation permite aproveitar ao máximo nosso conjunto de dados limitado e oferece a melhor estimativa para a popularidade do seu doce favorito!
Neste exercício, você vai usar cross_val_score() para executar LOOCV.
Este exercício faz parte do curso
Validação de Modelos em Python
Instruções do exercício
- Crie um scorer usando
mean_absolute_errorpara ocross_val_score()utilizar. - Preencha o
cross_val_score()para usar o modelorfr, omae_scorerrecém-definido e LOOCV. - Imprima a média e o desvio padrão de
scoresusandonumpy(carregado comonp).
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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.____(____))