LoslegenKostenlos loslegen

SMS-Spam optimiert

Die Pipeline, die du vorhin für das SMS-Spam-Modell erstellt hast, hat für alle Elemente in der Pipeline die Standardparameter verwendet. Es ist aber ziemlich unwahrscheinlich, dass diese Einstellungen ein besonders gutes Modell liefern. In dieser Übung wirst du die Pipeline für eine Auswahl von Parameterwerten ausführen. Wir machen das ganz systematisch: Die Werte für jeden Hyperparameter werden in einem Raster angeordnet und dann durchläuft die Pipeline systematisch jeden Punkt im Raster.

In dieser Übung richtest du ein Parameterraster ein, das mit Kreuzvalidierung verwendet werden kann, um einen guten Parametersatz für den SMS-Spam-Klassifikator auszuwählen.

Folgendes ist schon klar:

  • hasher — ein Objekt vom Typ „ HashingTF “ und
  • logistic — ein Objekt vom Typ „ LogisticRegression “.

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit PySpark

Kurs anzeigen

Anleitung zur Übung

  • Erstell ein Parameter-Grid-Builder-Objekt.
  • Füge dem Objekt „ HashingTF “ Gitterpunkte für die Parameter „ numFeatures “ und „ binary “ hinzu und gib die Werte 1024, 4096 und 16384 sowie „True“ und „False“ ein.
  • Füge dem Objekt „ LogisticRegression “ Gitterpunkte für die Parameter „ regParam “ und „ elasticNetParam “ hinzu und gib die Werte 0,01, 0,1, 1,0 und 10,0 bzw. 0,0, 0,5 und 1,0 ein.
  • Erstell das Parametergitter.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Create parameter grid
params = ____()

# Add grid for hashing trick parameters
params = params.____(____, ____) \
               .____(____, ____)

# Add grid for logistic regression parameters
params = params.____(____, ____) \
               .____(____, ____)

# Build parameter grid
params = ____.____()
Code bearbeiten und ausführen