Aan de slagBegin gratis

SMS-spam geoptimaliseerd

De pipeline die je eerder bouwde voor het SMS-spammodel gebruikte de standaardparameters voor alle onderdelen in de pipeline. Het is echter onwaarschijnlijk dat die parameters meteen een goed model opleveren. In deze oefening ga je de pipeline draaien voor een selectie van parameterwaarden. We doen dit op een systematische manier: de waarden voor elk van de hyperparameters worden op een raster gezet en vervolgens draait de pipeline systematisch over ieder punt in dat raster.

In deze oefening stel je een parameterraster in dat je met cross-validatie kunt gebruiken om een goede set parameters voor de SMS-spamclassifier te kiezen.

Het volgende is al gedefinieerd:

  • hasher — een HashingTF-object en
  • logistic — een LogisticRegression-object.

Deze oefening maakt deel uit van de cursus

Machine Learning met PySpark

Bekijk cursus

Oefeninstructies

  • Maak een object voor de parameter grid builder.
  • Voeg rasterpunten toe voor de parameters numFeatures en binary aan het HashingTF-object, met respectievelijk de waarden 1024, 4096 en 16384, en True en False.
  • Voeg rasterpunten toe voor de parameters regParam en elasticNetParam aan het LogisticRegression-object, met respectievelijk de waarden 0.01, 0.1, 1.0 en 10.0, en 0.0, 0.5 en 1.0.
  • Bouw het parameterraster.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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 bewerken en uitvoeren