Andra modellmått

Marknadsföringsanalys: Prediktera kundbortfall i Python

Mark Peterson

Director of Data Science, Infoblox

Sannolikhetströsklar

  • Varje prediktion din klassificerare gör har en tillhörande sannolikhet
  • Standard sannolikhetströskel i scikit-learn: 50%

 

  • Vad händer om vi varierar tröskeln?
Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 1

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 2

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 3

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 4

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 5

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 6

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 7

Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva del 8

Marknadsföringsanalys: Prediktera kundbortfall i Python

Generera sannolikheter i sklearn

logreg.predict_proba(X_test)[:,1]
array([[0.80188981, 0.19811019],
       [0.96484075, 0.03515925],
       [0.9182671 , 0.0817329 ],
       ...,
y_pred_prob = logreg.predict_proba(X_test)[:,1]
Marknadsföringsanalys: Prediktera kundbortfall i Python

ROC-kurva i sklearn

from sklearn.metrics import roc_curve

fpr, tpr, thresholds = roc_curve(y_test, y_pred_prob)
import matplotlib.pyplot as plt

plt.plot(fpr, tpr)

plt.xlabel("False Positive Rate")

plt.ylabel("True Positive Rate")

plt.plot([0, 1], [0, 1], "k--")

plt.show()
Marknadsföringsanalys: Prediktera kundbortfall i Python

Area under the curve

from sklearn.metrics import roc_auc_score

auc = roc_auc_score(y_test, y_pred)
Marknadsföringsanalys: Prediktera kundbortfall i Python

Nu kör vi en övning!

Marknadsföringsanalys: Prediktera kundbortfall i Python

Preparing Video For Download...