CommencerCommencer gratuitement

Créez une grille

Ensuite, vous devez créer une grille de valeurs pour rechercher les hyperparamètres optimaux. Le sous-module pyspark.ml.tuning comprend une classe appelée ParamGridBuilder qui fait exactement cela (vous commencez peut-être à remarquer un modèle ici ; PySpark a un sous-module pour à peu près tout !)

Vous devrez utiliser les méthodes .addGrid() et .build() pour créer une grille que vous pourrez utiliser pour la validation croisée. La méthode .addGrid() prend un paramètre de modèle (un attribut du modèle Estimator, lr, que vous avez créé il y a quelques exercices) et une liste de valeurs que vous voulez essayer. La méthode .build() ne prend aucun argument, elle renvoie simplement la grille que vous utiliserez ultérieurement.

Cet exercice fait partie du cours

Introduction à PySpark

Afficher le cours

Instructions

  • Importez le sous-module pyspark.ml.tuning sous l'alias tune.
  • Appelez le constructeur de la classe ParamGridBuilder() sans arguments. Enregistrez ceci sous grid.
  • Appelez la méthode .addGrid() sur grid avec lr.regParam comme premier argument et np.arange(0, .1, .01) comme second argument. Ce deuxième appel est une fonction du module numpy (importé as np) qui crée une liste de nombres de 0 à .1, en incrémentant de .01. Remplacez grid par le résultat.
  • Mettez à nouveau à jour grid en appelant une deuxième fois la méthode .addGrid(). Créez une grille pour lr.elasticNetParam qui ne comprend que les valeurs [0, 1].
  • Appelez la méthode .build() sur grid et remplacez-la par la sortie.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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()
Modifier et exécuter le code