ПочатиПочніть безкоштовно

Підсумкове оцінювання

Пам'ятайте, що точність і повнота можуть мати різні ваги, тож F-бета — важлива метрика оцінювання. Крім того, ROC та площа під кривою AUC — важливі додаткові метрики до точності й повноти, адже ви вже бачили, що модель може мати високий AUC, але низьку точність. У цій вправі ви обчислите повний набір метрик оцінювання для кожного класифікатора.

Функція print_estimator_name() надає назву для кожного класифікатора. X_train, y_train, X_test, y_test доступні у вашому середовищі, і ознаки вже стандартизовано. pandas як pd та sklearn також доступні у вашому середовищі.

Ця вправа є частиною курсу

Прогнозування CTR за допомогою машинного навчання в Python

Переглянути курс

Інструкції до вправи

  • Визначте MLP-класифікатор з одним прихованим шаром на 10 прихованих вузлів і максимумом у 50 ітерацій.
  • Навчіть і спрогнозуйте для кожного класифікатора.
  • Використайте реалізації зі sklearn, щоб отримати точність (precision), повноту (recall), F-бета та AUC ROC.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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))
Редагувати та запускати код