Толковый словарь по нейросетям и искусственному интеллекту
Уменьшение выборки
Категория термина
Уменьшение выборки (Undersampling) — это метод обработки данных, используемый для борьбы с проблемой дисбаланса классов (Data Imbalance) в машинном обучении. Суть подхода заключается в том, чтобы уменьшить количество примеров класса-множинства (majority class) до уровня меньшинства (minority class). В отличие от Oversampling, где мы искусственно увеличиваем число редких примеров, в undersampling мы убираем избыточные данные большинства, чтобы модель не переобучалась на них и более справедливо учитывала все классы.
🧠 Основная идея:
- При сильном дисбалансе модель склонна предсказывать только большинство.
- Убирая часть примеров из majority-класса, мы балансируем датасет.
- Это повышает важность minority-класса и улучшает его распознавание.
⚙️ Основные методы undersampling:
- Random Undersampling
- Случайное удаление примеров из majority-класса.
- Простой и быстрый метод.
- Минус: можно потерять важную информацию.
- Cluster Centroids
- Сокращение выборки за счёт кластеризации majority-примеров и замены их центроидами.
- Сохраняет структуру данных, уменьшая количество примеров.
- NearMiss
- Умный алгоритм, который выбирает те примеры большинства, которые находятся ближе всего к minority-примерам.
- Помогает сохранить важные для классификации границы классов.
- Tomek Links
- Метод, удаляющий пары близких примеров из разных классов, которые мешают чётко определить границу.
- Снижает шум и улучшает качество данных.
- Edited Nearest Neighbors (ENN)
- Удаляет примеры majority-класса, которые не согласуются с соседями по классу.
- Повышает чистоту данных.
📌 Пример:
В задаче анализа транзакций:
- 99% операций легальные, 1% — мошеннические.
- Если применить random undersampling, можно удалить часть легальных транзакций, оставив их столько же, сколько мошеннических.
- Итоговый датасет будет сбалансирован, и модель перестанет игнорировать мошеннические случаи.
📌 Применение:
- Медицина: диагностика редких заболеваний, где «здоровых» примеров слишком много.
- Финансы: выявление мошенничества.
- NLP: классификация текстов с редкими категориями.
- Компьютерное зрение: распознавание редких объектов или событий.
⚖️ Преимущества и недостатки:
Преимущества:
- Простота реализации (особенно random undersampling).
- Уменьшает размер выборки, что ускоряет обучение.
- Хорошо работает в комбинации с другими методами (например, oversampling).
Недостатки:
- Потеря информации: удалённые примеры могут содержать важные закономерности.
- Риск недообучения, если данных слишком мало.
- Возможна смещённость модели, если undersampling выполнен неправильно.
🧠 Связанные понятия:
- Oversampling — противоположный подход (увеличение числа примеров minority-класса).
- Data Imbalance — основная проблема, для решения которой применяется undersampling.
- Cost-sensitive Learning — альтернатива, где ошибки на minority-классе делают «дороже» для функции потерь.
💡 Вывод:
Undersampling — это один из основных способов балансировки данных, особенно полезный при очень больших и несбалансированных датасетах. Однако, из-за риска потери информации его часто комбинируют с другими методами (например, SMOTE, Tomek Links или кластеризацией). Правильное применение undersampling может существенно повысить качество модели, особенно в задачах, где редкие классы играют критическую роль.