Aan de slagGa gratis aan de slag

GridSearchCV om optimale parameters te vinden

In deze oefening ga je ons model minder "willekeurig" bijstellen en laat je GridSearchCV het werk voor je doen.

Met GridSearchCV kun je de prestatiewaarde waarmee gescoord wordt bepalen. Omdat we bij fraudedetectie vooral zoveel mogelijk fraudegevallen willen opsporen, kun je je modelinstellingen optimaliseren voor de best mogelijke Recall-score. Als je óók het aantal false positives wilt verlagen, kun je optimaliseren op F1-score; dat geeft je die fijne balans tussen Precision en Recall.

GridSearchCV is al geïmporteerd uit sklearn.model_selection, dus laten we het proberen!

Deze oefening maakt deel uit van de cursus

Fraudedetectie in Python

Cursus bekijken

Oefeninstructies

  • Definieer in het parameterrooster dat je 1 en 30 bomen wilt proberen, en dat je het gini- en entropy-splitscriterium wilt testen.
  • Definieer het model als een eenvoudige RandomForestClassifier; houd random_state op 5 zodat je modellen kunt vergelijken.
  • Stel de optie scoring zo in dat er wordt geoptimaliseerd voor recall.
  • Fit het model op de trainingsdata X_train en y_train en haal de beste parameters voor het model op.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Define the parameter sets to test
param_grid = {'n_estimators': [____, ____], 'max_features': ['auto', 'log2'],  'max_depth': [4, 8], 'criterion': ['____', '____']
}

# Define the model to use
model = ____(random_state=5)

# Combine the parameter sets with the defined model
CV_model = GridSearchCV(estimator=model, param_grid=param_grid, cv=5, scoring='____', n_jobs=-1)

# Fit the model to our training data and obtain best parameters
CV_model.fit(____, ____)
CV_model.____
Code bewerken en uitvoeren