Aan de slagGa gratis aan de slag

Precisie en recall

Zowel precisie als recall hangen samen met de vier uitkomsten die in de vorige les zijn besproken en zijn belangrijke evaluatiematen voor elk Machine Learning-model. Een ad CTR-model zou idealiter een hoge precisie (hoge ROI op advertentie-uitgaven) en hoge recall (relevante doelgroep-targeting) hebben. Hoewel je precisie en recall handmatig kunt berekenen, heeft sklearn handige implementaties die je eenvoudig in je bestaande workflow kunt opnemen. In deze oefening zet je een beslisboom op en bereken je precisie en recall.

De pandas-module is beschikbaar als pd in je werkruimte en de voorbeeld-DataFrame is geladen als df. De features zijn geladen in X en de target is geladen in y. Daarnaast zijn precision_score() en recall_score() uit sklearn.metrics beschikbaar.

Deze oefening maakt deel uit van de cursus

CTR voorspellen met Machine Learning in Python

Cursus bekijken

Oefeninstructies

  • Maak de train- en test-splits voor X en y.
  • Definieer een decision tree-classifier en produceer voorspellingen y_pred door het model te fitten.
  • Gebruik implementaties uit sklearn om de precisie- en recall-scores te berekenen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Set up training and testing split
X_train, X_test, y_train, y_test = ____(
  ____, ____, test_size = .2, random_state = 0)

# Create classifier and make predictions
clf = ____
y_pred = clf.____(____, _____).____(X_test) 

# Evaluate precision and recall
prec = ____(y_test, ____, average = 'weighted')
recall = ____(y_test, ____, average = 'weighted')
print("Precision: %s, Recall: %s" %(prec, recall))
Code bewerken en uitvoeren