เมตริกอื่น ๆ ของโมเดล

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

Mark Peterson

Director of Data Science, Infoblox

Probability thresholds

  • ทุกการทำนายของตัวแยกประเภทจะมีค่าความน่าจะเป็นกำกับไว้
  • ค่าเริ่มต้นของ threshold ใน scikit-learn: 50%

 

  • จะเกิดอะไรขึ้นหากปรับ threshold นี้?
Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 1

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 2

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 3

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 4

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 5

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 6

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 7

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ส่วนที่ 8

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

การสร้างค่าความน่าจะเป็นใน 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]
Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

ROC curve ใน 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()
Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

พื้นที่ใต้เส้นโค้ง

from sklearn.metrics import roc_auc_score

auc = roc_auc_score(y_test, y_pred)
Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

มาฝึกกันเถอะ!

Marketing Analytics: การพยากรณ์การเลิกใช้บริการของลูกค้าด้วย Python

Preparing Video For Download...