Для решения задач классификации с несбалансированными классами можно применять различные методы сэмплирования, например:
- Случайное удаление (random undesampling). 1 Простая стратегия, при которой определяется число примеров доминирующего класса, которые нужно удалить, чтобы достичь требуемого соотношения классов в обучающей выборке. 1 Затем случайным образом выбираются и удаляются нужные наблюдения. 1
- Односторонний сэмплинг (One-side sampling, one-sided selection — OSS). 1 На первом шаге применяется правило сосредоточенного ближайшего соседа, а на втором — удаляются все мажоритарные наблюдения, участвующие в связях Томека. 1 Таким образом удаляются большие «сгустки» мажоритарных наблюдений, а затем область пространства со скоплением миноритарных очищается от мажоритарных, которые создают эффект шума на границах классов и мешают их распознаванию. 1
- Правило «очищающего» соседа (neighborhood cleaning rule — NCR). 1 Все наблюдения классифицируются по правилу трёх ближайших соседей (3-NN). 1 Затем удаляются примеры мажоритарного класса, которые правильно распознаны или являются соседями миноритарных примеров, которые были неверно классифицированы. 1
- Дублирование примеров миноритарного класса (oversampling). 1 Самый простой метод — дублирование примеров миноритарного класса. 1 В зависимости от того, какое соотношение классов необходимо получить в выборке, выбирается случайным образом соответствующее количество наблюдений для дублирования. 1
- Алгоритм SMOTE. 12 В основе алгоритма лежит идея генерации некоторого количества искусственных наблюдений, которые были бы «похожи» на наблюдения, имеющиеся в миноритарном классе, но при этом не дублировали их. 1
Выбор подхода зависит от специфики задачи, выбранных модели и метрики, особенностей датасета. 3