Оценка модели логистической регрессии
Точность (accuracy) — не самая надёжная метрика: она может быть смещена в пользу наиболее часто встречающегося целевого класса.
Есть две другие полезные метрики:
- precision (точность) и
- recall (полнота).
Обратитесь к слайдам этого урока, чтобы найти соответствующие формулы.
Precision — это доля положительных предсказаний, которые оказались верными. Из всех рейсов, предсказанных как задержанные, какая доля действительно была задержана?
Recall — это доля положительных исходов, которые модель правильно предсказала. Из всех задержанных рейсов какую долю модель определила верно?
Precision и recall, как правило, рассчитываются для положительного целевого класса. Однако существуют и взвешенные версии этих метрик, учитывающие оба целевых класса.
Компоненты матрицы ошибок доступны как TN, TP, FN и FP, а также объект prediction.
Это упражнение является частью курса
Машинное обучение с PySpark
Инструкции к упражнению
- Вычислите precision и recall.
- Создайте многоклассовый оценщик и вычислите взвешенную precision.
- Создайте бинарный оценщик и вычислите AUC с помощью метрики
"areaUnderROC".
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
from pyspark.ml.evaluation import MulticlassClassificationEvaluator, BinaryClassificationEvaluator
# Calculate precision and recall
precision = ____
recall = ____
print('precision = {:.2f}\nrecall = {:.2f}'.format(precision, recall))
# Find weighted precision
multi_evaluator = ____
weighted_precision = multi_evaluator.____(prediction, {multi_evaluator.metricName: "____"})
# Find AUC
binary_evaluator = ____
auc = binary_evaluator.____(____, {____})