1. Nauka
  2. /
  3. Kursy
  4. /
  5. Podstawy PySpark

Connected

ćwiczenie

Tworzenie siatki

Teraz musisz utworzyć siatkę wartości, które zostaną przeszukane podczas szukania optymalnych hiperparametrów. Submoduł pyspark.ml.tuning zawiera klasę ParamGridBuilder, która robi dokładnie to (może zaczynasz już dostrzegać pewien wzorzec – PySpark ma submoduł niemal do wszystkiego!).

Do zbudowania siatki, której użyjesz podczas kroswalidacji, potrzebne będą metody .addGrid() i .build(). Metoda .addGrid() przyjmuje parametr modelu (atrybut estymatora lr, który był tworzony kilka ćwiczeń wcześniej) oraz listę wartości do przetestowania. Metoda .build() nie przyjmuje żadnych argumentów – po prostu zwraca gotową siatkę do dalszego użycia.

Instrukcje

100 XP
  • Zaimportuj submoduł pyspark.ml.tuning pod aliasem tune.
  • Wywołaj konstruktor klasy ParamGridBuilder() bez argumentów i zapisz wynik jako grid.
  • Wywołaj metodę .addGrid() na obiekcie grid, podając lr.regParam jako pierwszy argument i np.arange(0, .1, .01) jako drugi argument. Ten drugi argument to funkcja z modułu numpy (zaimportowanego as np), która tworzy listę liczb od 0 do 0,1 z krokiem 0,01. Nadpisz zmienną grid otrzymanym wynikiem.
  • Zaktualizuj grid, wywołując ponownie metodę .addGrid() – tym razem utwórz siatkę dla lr.elasticNetParam zawierającą tylko wartości [0, 1].
  • Wywołaj metodę .build() na obiekcie grid i nadpisz go otrzymanym wynikiem.