За пределами точности
В этом упражнении вы выйдете за рамки простой оценки точности и вычислите площадь под ROC-кривой (AUC) для базовой модели дерева решений. Помните, что для случайного классификатора AUC равен 0,5 — значит, ваша модель должна показать результат выше этого значения.
X доступен как DataFrame с признаками, а y — как DataFrame с целевыми значениями. В рабочей среде также доступны sklearn и pandas под псевдонимом pd.
Мы воспользуемся этой настройкой, чтобы проанализировать AUC нашей ROC-кривой.
Это упражнение является частью курса
Прогнозирование CTR с помощью машинного обучения на Python
Инструкции к упражнению
- Разделите данные на обучающую и тестовую выборки.
- Обучите классификатор на обучающих данных, а затем получите предсказания для тестовой выборки с помощью
predict_proba()иpredict(). - Оцените площадь под ROC-кривой (AUC), вызвав функцию
roc_curve()дляy_test:roc_curve(y_test, y_score[:, 1]).
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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)