Middle
40
Какие метрики multiclass-классификации вы знаете? Их плюсы и минусы (macro, micro, weighted).
Ответ от нейросети
sobes.tech AI
В задачах мультиклассовой классификации часто используют следующие метрики агрегации:
-
Macro-average — вычисляет метрику (например, precision, recall, F1) для каждого класса отдельно, а затем усредняет их без учёта количества примеров в классах.
- Плюсы: даёт равный вес всем классам, полезно при несбалансированных данных, чтобы не игнорировать редкие классы.
- Минусы: может быть слишком чувствителен к классам с малым числом примеров.
-
Micro-average — объединяет все предсказания и истинные метки по всем классам и вычисляет метрику на этом объединённом наборе.
- Плюсы: отражает общую производительность модели, учитывая количество примеров каждого класса.
- Минусы: доминируют классы с большим числом примеров, редкие классы могут быть «приглушены».
-
Weighted-average — вычисляет метрику для каждого класса и усредняет их, взвешивая по количеству примеров в каждом классе.
- Плюсы: балансирует между macro и micro, учитывая вклад каждого класса пропорционально его размеру.
- Минусы: всё равно может недооценивать редкие классы, если они сильно малы.
Выбор метрики зависит от задачи: если важна равная оценка для всех классов — macro, если важен общий баланс — micro, если нужен компромисс — weighted.
Пример в sklearn:
from sklearn.metrics import precision_recall_fscore_support
# y_true и y_pred — истинные и предсказанные метки
precision, recall, f1, _ = precision_recall_fscore_support(y_true, y_pred, average='macro')