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— eenHashingTF-object enlogistic— eenLogisticRegression-object.
Deze oefening maakt deel uit van de cursus
Machine Learning met PySpark
Oefeninstructies
- Maak een object voor de parameter grid builder.
- Voeg rasterpunten toe voor de parameters
numFeaturesenbinaryaan hetHashingTF-object, met respectievelijk de waarden 1024, 4096 en 16384, en True en False. - Voeg rasterpunten toe voor de parameters
regParamenelasticNetParamaan hetLogisticRegression-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 = ____.____()