De confusion matrix berekenen
Een confusion matrix (ook wel confusion table genoemd) vormt de basis voor alle prestatiemetrieken van modellen met een categorische respons (zoals een logistische regressie). De matrix bevat de aantallen van elke combinatie van werkelijke respons en voorspelde respons. In dit geval, met twee mogelijke uitkomsten (churn of geen churn), zijn er vier uitkomsten.
- True positive: De klant is vertrokken (churn) en het model voorspelde dat ook.
- False positive: De klant is niet vertrokken, maar het model voorspelde van wel.
- True negative: De klant is niet vertrokken en het model voorspelde ook van niet.
- False negative: De klant is vertrokken, maar het model voorspelde van niet.
churn en mdl_churn_vs_relationship zijn beschikbaar.
Deze oefening maakt deel uit van de cursus
Introductie tot regressie met statsmodels in Python
Oefeninstructies
- Haal de werkelijke responsen op door de kolom
has_churnedvan de gegevensset te selecteren. Ken toe aanactual_response. - Haal de “meest waarschijnlijke” voorspelde responsen uit het model. Ken toe aan
predicted_response. - Maak een DataFrame van
actual_responseenpredicted_response. Ken toe aanoutcomes. - Print
outcomesals een tabel met aantallen, die de confusion matrix weergeeft. Dit is alvast voor je gedaan.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Get the actual responses
actual_response = ____
# Get the predicted responses
predicted_response = ____
# Create outcomes as a DataFrame of both Series
outcomes = pd.DataFrame({____,
____})
# Print the outcomes
print(outcomes.value_counts(sort = False))