ÎncepețiÎncepe gratuit

Evaluare completă

Reține că precizia și recall-ul pot fi ponderate diferit, prin urmare scorul F-beta este o metrică de evaluare importantă. În plus, curba ROC-AUC este o metrică complementară valoroasă pentru precizie și recall – ai văzut anterior că un model poate avea un AUC ridicat, dar o precizie scăzută. În acest exercițiu, vei calcula setul complet de metrici de evaluare pentru fiecare clasificator.

Este furnizată o funcție print_estimator_name() care afișează numele fiecărui clasificator. X_train, y_train, X_test, y_test sunt disponibile în spațiul tău de lucru, iar caracteristicile au fost deja standardizate. pandas ca pd și sklearn sunt de asemenea disponibile în spațiul tău de lucru.

Acest exercițiu face parte din cursul

Predicția CTR cu Machine Learning în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Definește un clasificator MLP cu un strat ascuns de 10 unități și 50 de iterații maxime.
  • Antrenează și generează predicții pentru fiecare clasificator.
  • Folosește implementările din sklearn pentru a obține precizia, recall-ul, scorul F-beta și scorul AUC al curbei ROC.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Create classifiers
clfs = [LogisticRegression(), DecisionTreeClassifier(), RandomForestClassifier(), 
        ____(____ = (10, ), ____ = 50)]

# Produce all evaluation metrics for each classifier
for clf in clfs:
  print("Evaluating classifier: %s" %(print_estimator_name(clf)))
  y_score = clf.fit(X_train, y_train).____(X_test)
  y_pred = clf.fit(X_train, y_train).____(X_test)
  prec = ____(y_test, y_pred, average = 'weighted')
  recall = ____(y_test, y_pred, average = 'weighted')
  fbeta = ____(y_test, y_pred, beta = 0.5, average = 'weighted')
  roc_auc = ____(y_test, y_score[:, 1])
  print("Precision: %s: Recall: %s, F-beta score: %s, AUC of ROC curve: %s" 
        %(prec, recall, fbeta, roc_auc))
Editează și rulează codul