Optymalizacja klasyfikatora spamu SMS
Potok zbudowany wcześniej dla modelu wykrywania spamu SMS korzystał z domyślnych parametrów dla wszystkich jego elementów. Jest jednak mało prawdopodobne, że te parametry dadzą naprawdę dobry model. W tym ćwiczeniu uruchomisz potok dla wybranego zestawu wartości parametrów. Podejdziemy do tego systematycznie: wartości każdego z hiperparametrów zostaną rozłożone na siatce, a potok będzie kolejno sprawdzał każdy punkt tej siatki.
W tym ćwiczeniu skonfigurujesz siatkę parametrów, którą można wykorzystać z walidacją krzyżową do wyboru dobrego zestawu parametrów dla klasyfikatora spamu SMS.
Następujące obiekty są już zdefiniowane:
hasher— obiektHashingTForazlogistic— obiektLogisticRegression.
To ćwiczenie jest częścią kursu
Uczenie maszynowe z PySpark
Instrukcje do ćwiczenia
- Utwórz obiekt konstruktora siatki parametrów.
- Dodaj punkty siatki dla parametrów
numFeaturesibinarydo obiektuHashingTF, podając odpowiednio wartości 1024, 4096 i 16384 oraz True i False. - Dodaj punkty siatki dla parametrów
regParamielasticNetParamdo obiektuLogisticRegression, podając odpowiednio wartości 0.01, 0.1, 1.0 i 10.0 oraz 0.0, 0.5 i 1.0. - Zbuduj siatkę parametrów.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create parameter grid
params = ____()
# Add grid for hashing trick parameters
params = params.____(____, ____) \
.____(____, ____)
# Add grid for logistic regression parameters
params = params.____(____, ____) \
.____(____, ____)
# Build parameter grid
params = ____.____()