Tworzenie funkcji do przeszukiwania siatki
W pracy z danymi warto budować algorytmy, modele i procesy „od zera" – dzięki temu lepiej rozumiesz, co dzieje się na głębszym poziomie. Oczywiście istnieją świetne pakiety i biblioteki, które to ułatwiają (i wkrótce do nich przejdziemy!), ale samodzielne budowanie od podstaw daje realną przewagę w pracy z danymi.
W tym ćwiczeniu stworzysz funkcję, która przyjmuje 2 hiperparametry, buduje modele i zwraca wyniki. Użyjesz tej funkcji w kolejnym ćwiczeniu.
Dostępne będą zbiory danych: X_train, X_test, y_train oraz y_test.
To ćwiczenie jest częścią kursu
Strojenie hiperparametrów w Pythonie
Instrukcje do ćwiczenia
- Zbuduj funkcję przyjmującą dwa parametry:
learning_rate(współczynnik uczenia) orazmax_depth(maksymalna głębokość). - Dodaj do funkcji logikę, która buduje model GBM i dopasowuje go do danych z użyciem podanych hiperparametrów.
- Spraw, aby funkcja zwracała wyniki działania modelu oraz wybrane hiperparametry (
learning_rateimax_depth).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create the function
def gbm_grid_search(____, ____):
# Create the model
model = GradientBoostingClassifier(____=___, ____=____)
# Use the model to make predictions
predictions = model.fit(____, ____).predict(____)
# Return the hyperparameters and score
return([____, ____, accuracy_score(____, ____)])