F-beta-score
De F-beta-score is een gewogen harmonisch gemiddelde van precisie en recall, en wordt gebruikt om precisie en recall anders te wegen. Vaak wil je precisie zwaarder laten meewegen dan recall; dat kan met een lagere beta tussen 0 en 1. In deze oefening bereken je de precisie en recall van een MLP-classifier, samen met de F-beta-score met beta = 0.5.
X_train, y_train, X_test, y_test zijn beschikbaar in je werkruimte, en de features zijn al gestandaardiseerd. pandas als pd en sklearn zijn ook beschikbaar in je werkruimte. fbeta_score() uit sklearn.metrics is eveneens beschikbaar.
Deze oefening maakt deel uit van de cursus
CTR voorspellen met Machine Learning in Python
Oefeninstructies
- Splits de data in trainings- en testgegevens.
- Definieer een MLP-classifier, train met
.fit()en voorspel met.predict(). - Gebruik implementaties uit
sklearnom de precisie-, recall- en F-beta-scores te berekenen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Set up MLP classifier, train and predict
X_train, X_test, y_train, y_test = ____(
____, ____, test_size = .2, random_state = 0)
clf = ____(hidden_layer_sizes = (16, ),
max_iter = 10, random_state = 0)
y_pred = clf.____(____, _____).____(X_test)
# Evaluate precision and recall
prec = ____(y_test, ____, average = 'weighted')
recall = ____(y_test, ____, average = 'weighted')
fbeta = ____(y_test, ____, ____ = 0.5, average = 'weighted')
print("Precision: %s, Recall: %s, F-beta score: %s" %(prec, recall, fbeta))