Dincolo de simplă acuratețe
În acest exercițiu, pentru a merge dincolo de simplă acuratețe, vei evalua AUC-ul curbei ROC pentru un model de bază de tip arbore de decizie. Reține că valoarea de referință pentru un clasificator aleatoriu este un AUC de 0,5, deci vei dori să obții un scor mai mare decât 0,5.
X este disponibil ca DataFrame cu caracteristici, iar y este disponibil ca DataFrame cu valorile țintă. Atât sklearn, cât și pandas ca pd sunt disponibile în spațiul tău de lucru.
Vom folosi această configurare pentru a analiza AUC-ul curbei ROC.
Acest exercițiu face parte din cursul
Predicția CTR cu Machine Learning în Python
Instrucțiuni pentru exercițiu
- Împarte datele în seturi de antrenament și de testare.
- Antrenează clasificatorul folosind datele de antrenament pentru a face predicții pe datele de testare, folosind
predict_proba()șipredict(). - Evaluează AUC-ul de sub curba ROC folosind funcția
roc_curve()aplicată pey_test, astfel:roc_curve(y_test, y_score[:, 1]).
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Training and testing
X_train, X_test, y_train, y_test = \
____(X, y, test_size = .2, random_state = 0)
# Create decision tree classifier
clf = DecisionTreeClassifier()
# Train classifier - predict probability score and label
y_score = clf.fit(____, ____).predict_proba(____)
y_pred = clf.fit(____, ____).predict(____)
# Get ROC curve metrics
fpr, tpr, thresholds = ____(____, y_score[:, 1])
roc_auc = auc(fpr, tpr)
print(roc_auc)