Исследование возможностей синтетических данных для повышения производительности модели на несбалансированных наборах данных

Фон — несбалансированные наборы данных

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

  • Недостаточная выборка. Получите более сбалансированный набор обучающих данных, случайно занижая выборку большинства классов.
  • Избыточная выборка. Получите сбалансированный набор обучающих данных путем случайной избыточной выборки класса меньшинства.
  • Взвешенные потери. Назначьте веса функции потерь по отношению к классу меньшинства.
  • Синтетические данные. Используйте генеративный ИИ для создания высококачественных образцов синтетических данных класса меньшинства.

В этой статье я показываю, как обучение модели на синтетических данных превосходит другие подходы в повышении производительности классификатора.

Набор данных

Данные получены из Kaggle, состоящего из 284 807 транзакций по кредитным картам, 492 (0,172%) из которых помечены как мошеннические. Данные доступны как для коммерческого, так и для некоммерческого использования по открытой лицензии Data Commons.

Для заинтересованных читателей Kaggle предлагает более подробную информацию и базовую описательную статистику о данных.

Из этого набора данных Kaggle я создаю два подмножества: обучающий набор и набор задержек. Обучающий набор включает 80% всех данных, а также синтетически сгенерированные образцы при изучении этого подхода. Набор задержек составляет 20% исходных данных, исключая любые синтетические образцы.

Модель