Estou com underfitting?
Você está criando um modelo de random forest para prever se vai vencer um jogo futuro de jogo da velha (Tic-Tac-Toe). Usando o conjunto de dados tic_tac_toe, você criou os conjuntos de treino e teste, X_train, X_test, y_train e y_test.
Você decidiu criar vários modelos de random forest com quantidades diferentes de árvores (1, 2, 3, 4, 5, 10, 20 e 50). Quanto mais árvores você usar, mais tempo o modelo levará para rodar. No entanto, se você não usar árvores suficientes, corre o risco de underfitting. Você criou um loop for para testar seu modelo com diferentes números de árvores.
Este exercício faz parte do curso
Validação de Modelos em Python
Instruções do exercício
- Em cada iteração do loop, gere previsões para os conjuntos
X_traineX_test. - Em cada iteração, adicione o
accuracy_score()do conjuntoy_traine das previsões correspondentes atrain_scores. - Em cada iteração, adicione o
accuracy_score()do conjuntoy_teste das previsões correspondentes atest_scores. - Imprima as pontuações de treino e de teste usando os comandos de impressão.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
from sklearn.metrics import accuracy_score
test_scores, train_scores = [], []
for i in [1, 2, 3, 4, 5, 10, 20, 50]:
rfc = RandomForestClassifier(n_estimators=i, random_state=1111)
rfc.fit(X_train, y_train)
# Create predictions for the X_train and X_test datasets.
train_predictions = rfc.predict(____)
test_predictions = rfc.predict(____)
# Append the accuracy score for the test and train predictions.
train_scores.append(round(____(____, ____), 2))
test_scores.append(round(____(____, ____), 2))
# Print the train and test scores.
print("The training scores were: {}".format(____))
print("The testing scores were: {}".format(____))