ComenzarEmpieza gratis

Búsqueda en cuadrícula

Recuerda que en la lección anterior creamos un modelo base de Gradient Boosting. Ahora tu objetivo es encontrar el mejor valor del hiperparámetro max_depth para este modelo de Gradient Boosting. Este hiperparámetro limita el número de nodos en cada árbol individual. Usarás validación cruzada K-fold para medir el rendimiento local del modelo para cada valor del hiperparámetro.

Tienes una función get_cv_score() que recibe el conjunto de entrenamiento y un diccionario con los parámetros del modelo como argumentos y devuelve el RMSE de validación global sobre una validación cruzada de 3 folds.

Este ejercicio forma parte del curso

Cómo ganar una competición de Kaggle con Python

Ver curso

Instrucciones del ejercicio

  • Especifica la cuadrícula de posibles valores de max_depth con 3, 6, 9, 12 y 15.
  • Pasa cada candidato de hiperparámetro de la cuadrícula al diccionario params del modelo.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Possible max depth values
max_depth_grid = [____]
results = {}

# For each value in the grid
for max_depth_candidate in max_depth_grid:
    # Specify parameters for the model
    params = {'max_depth': ____}

    # Calculate validation score for a particular hyperparameter
    validation_score = get_cv_score(train, params)

    # Save the results for each max depth value
    results[max_depth_candidate] = validation_score   
print(results)
Editar y ejecutar código