Данные

Imbalanced Data

Дисбаланс классов

актуальноТекущий рабочий стандарт

Когда положительных объектов 1% или меньше: как обучать, чем мерить и что делать с порогом.

Ключевые тезисы

  • Перевзвешивание классов почти всегда лучше и дешевле, чем передискретизация.
  • SMOTE помогает на малых табличных выборках и почти бесполезен на больших и на изображениях.
  • Любой ресэмплинг делается только внутри фолда и ломает калибровку вероятностей.
Тема также относится к главам:Практика MLРабота с данными

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Что делать с дисбалансом

Четыре подхода по возрастанию сложности.

ПриёмКак работаетРиск
Веса классовредкий класс весит больше в функции потерьломает калибровку
Undersamplingвыбрасываем часть большого классатеряем данные
Oversampling / SMOTEдублируем или синтезируем редкий класспереобучение на синтетике
Порог + правильная метрикамодель не трогаем, меняем решениеничего не ломает
На практике

Начинайте с последней строки: часто «проблема дисбаланса» — это на самом деле проблема выбора метрики и порога, а не обучения.

2

Где здесь ошибаются

Три ловушки, встречающиеся почти в каждом проекте.

  • Ресэмплинг до разбиения: синтетические объекты попадают и в train, и в валидацию — метрика взлетает.
  • Accuracy как метрика: при 1% положительных она бесполезна; смотрите PR-AUC и MCC.
  • Потеря калибровки: после перевзвешивания вероятности смещены — калибруйте отдельно, если они нужны.
0.000.250.500.751.00оценка моделипорогкласс 0класс 1
Precision0.941
Recall0.841
F10.888
Accuracy0.936
TP / FP / FN252 / 16 / 48
Поставьте долю класса 1 на 5% и посмотрите, как ведут себя precision и recall при разных порогах

Связанные темы

Редкие классы и события

Isolation Forest80%

Isolation Forest · Классическое машинное обучение

Обнаружение аномалий случайными разбиениями: аномальный объект отделяется от остальных за меньшее число разрезов.

Anomaly Detection80%

Поиск аномалий · Обучение без учителя

Выделение объектов, не похожих на основную массу данных, при отсутствии меток.

PR-AUC80%

PR-AUC · Метрики

Площадь под кривой precision–recall; честнее ROC-AUC при редком положительном классе.

MCC80%

Коэффициент Мэтьюса · Метрики

Корреляция между предсказаниями и истиной, учитывающая все четыре ячейки матрицы ошибок.

Loss functions80%

Функции потерь · Глубокое обучение

Формализуют цель обучения. Выбор потерь важнее выбора архитектуры чаще, чем кажется.

Extreme Value Theory80%

Теория экстремальных значений · Теория вероятностей и распределения

Аппарат для моделирования максимумов и хвостов: как оценить вероятность события, которого ещё не случалось.