Prueba distintas profundidades máximas
Siempre queremos optimizar nuestros modelos de Machine Learning para hacer las mejores predicciones posibles. Podemos hacerlo ajustando hiperparámetros, que son configuraciones de nuestros modelos. Veremos con más detalle cómo se usan en capítulos posteriores, pero por ahora piensa en ellos como diales que podemos girar para afinar nuestras predicciones y que sean lo más buenas posible.
Para los árboles de decisión normales, probablemente el hiperparámetro más importante es max_depth. Este limita el número de divisiones en un árbol de decisión. Busquemos el mejor valor de max_depth según la puntuación R\(^2\) de nuestro modelo en el conjunto de prueba, que podemos obtener usando el método score() de nuestros modelos de árbol de decisión.
Este ejercicio forma parte del curso
Machine Learning para finanzas con Python
Instrucciones del ejercicio
- Recorre los valores 3, 5 y 10 para usarlos como parámetro
max_depthen nuestro modelo de árbol de decisión. - Establece el parámetro
max_depthen nuestro DecisionTreeRegressor para que sea igual aden cada iteración del bucle. - Imprime la puntuación del modelo sobre
train_featuresytrain_targets.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Loop through a few different max depths and check the performance
for d in [____]:
# Create the tree and fit it
decision_tree = DecisionTreeRegressor(____)
decision_tree.fit(train_features, train_targets)
# Print out the scores on train and test
print('max_depth=', str(d))
print(decision_tree.score(____))
print(decision_tree.score(test_features, test_targets), '\n')