Какие знаешь метрики для задач классификации?
Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Метрики для задач классификации
В машинном обучении существует множество метрик для оценки качества моделей классификации. Выбор метрики зависит от специфики задачи, размера классов и целей бизнеса.
Основные метрики
Accuracy (Точность) — доля корректных предсказаний от всех предсказаний. Используется когда классы сбалансированы. Формула: (TP + TN) / (TP + TN + FP + FN).
Precision (Точность) — доля правильно предсказанных положительных примеров среди всех предсказанных как положительные. Важна когда стоимость ложного положительного результата высока. TP / (TP + FP).
Recall (Полнота) — доля правильно предсказанных положительных примеров среди всех действительно положительных. Критична когда нужно найти все положительные случаи. TP / (TP + FN).
F1-Score — гармоническое среднее Precision и Recall. 2 × (Precision × Recall) / (Precision + Recall). Используется при дисбалансе классов.
Продвинутые метрики
ROC-AUC — площадь под кривой ROC (True Positive Rate vs False Positive Rate). Показывает способность модели различать классы при любом пороге. Значение от 0 до 1.
Precision-Recall Curve — кривая зависимости Precision от Recall. Лучше ROC-AUC при сильном дисбалансе классов.
Cohen's Kappa — мера согласованности, учитывающая случайность. Лучше Accuracy для несбалансированных данных.
Confusion Matrix — матрица 2×2 (или N×N для мультиклассовой классификации), показывающая TP, TN, FP, FN. Основа для вычисления других метрик.
Практический выбор метрик
from sklearn.metrics import (
accuracy_score, precision_score, recall_score, f1_score,
roc_auc_score, confusion_matrix, classification_report
)
# Для сбалансированных данных
accuracy = accuracy_score(y_true, y_pred)
# Для несбалансированных данных
f1 = f1_score(y_true, y_pred, average='weighted')
roc_auc = roc_auc_score(y_true, y_pred_proba)
# Для мультиклассовой классификации
print(classification_report(y_true, y_pred))
Когда какую метрику использовать
- Spam detection: Recall важен (не пропустить спам), Precision тоже (не забанить нормальные письма)
- Медицинская диагностика: Recall критичен (не пропустить болезнь), может быть много ложных срабатываний
- Кредитный скоринг: Precision важен (избежать убытков от выданных плохих кредитов)
- Сбалансированные данные: Accuracy достаточна
Ключ — всегда понимать бизнес-контекст и стоимость ошибок разных типов.