ComenzarEmpieza gratis

Crear una cuadrícula

A continuación, tienes que crear una cuadrícula de valores sobre la que buscar los hiperparámetros óptimos. El submódulo pyspark.ml.tuning incluye una clase llamada ParamGridBuilder que hace precisamente eso (quizá estés empezando a notar un patrón aquí; ¡PySpark tiene un submódulo para casi todo!).

Tendrás que utilizar los métodos .addGrid() y .build() para crear una cuadrícula que puedas utilizar para la validación cruzada. El método .addGrid() toma un parámetro del modelo (un atributo del modelo Estimator, lr, que creaste hace unos ejercicios) y una lista de valores que quieres probar. El método .build() no toma argumentos, solo devuelve la cuadrícula que utilizarás más adelante.

Este ejercicio forma parte del curso

Fundamentos de PySpark

Ver curso

Instrucciones del ejercicio

  • Importa el submódulo pyspark.ml.tuning con el alias tune.
  • Llama al constructor de la clase ParamGridBuilder() sin argumentos. Guárdalo como grid.
  • Llama al método .addGrid() en grid con lr.regParam como primer argumento y np.arange(0, .1, .01) como segundo argumento. Esta segunda llamada es una función del módulo numpy (importado as np) que crea una lista de números del 0 al .1, incrementándose en .01. Sobrescribe grid con el resultado.
  • Actualiza de nuevo grid llamando una segunda vez al método .addGrid() crea una cuadrícula para lr.elasticNetParam que incluya solo los valores [0, 1].
  • Llama al método .build() en grid y sobrescríbelo con la salida.

Ejercicio interactivo práctico

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

# Import the tuning submodule
import ____ as ____

# Create the parameter grid
grid = tune.____

# Add the hyperparameter
grid = grid.addGrid(____, np.arange(0, .1, .01))
grid = grid.addGrid(____, ____)

# Build the grid
grid = grid.build()
Editar y ejecutar código