Когда мы должны считать набор данных несбалансированным?


10

Я сталкиваюсь с ситуацией, когда количество положительных и отрицательных примеров в наборе данных несбалансировано.

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

Примеры:

  • Если число положительных примеров равно 1000, а число отрицательных примеров - 10 000, я должен пойти на обучение моего классификатора по полному набору данных или я должен отбирать отрицательные примеры?
  • Тот же вопрос для 1000 положительных примеров и 100 000 отрицательных.
  • Тот же вопрос для 10000 положительных и 1000 отрицательных.
  • так далее...

Нет ничего плохого в наборах данных, которые не разбиваются идеально по середине. Какую технику моделирования вы используете? Если метод основан на «сбалансированных» данных, возможно, вы используете неправильный метод.
D3C34C34D

1
Нина Зумель исследует влияние балансировки на различные оценки здесь , это может помочь и другим. Она смотрит на случайный лес, SVM и оценку логита.
ОВЛХ

Ответы:


9

Я думаю, что субсэмплирование (даунсэмплинг) является популярным методом контроля дисбаланса классов на базовом уровне, то есть устраняет корень проблемы. Так что для всех ваших примеров будет работать случайный выбор 1000 из большинства класса каждый раз. Вы могли бы даже поиграть с 10 моделями (10 сгибов большинства в 1000 против 1000 меньшинств), так что вы будете использовать весь свой набор данных. Вы можете использовать этот метод, но опять же вы выбрасываете 9000 сэмплов, если не попробуете несколько методов ансамбля. Легко исправить, но сложно получить оптимальную модель на основе ваших данных.

Степень, в которой вы должны контролировать дисбаланс классов, в значительной степени зависит от вашей цели. Если вы заботитесь о чистой классификации, то дисбаланс повлияет на 50% -ую вероятность, отсекаемую для большинства методов, поэтому я бы подумал о понижающей выборке. Если вы заботитесь только о порядке классификаций (хотите, чтобы положительные значения, как правило, были выше, чем отрицательные), и используете такую ​​меру, как AUC, дисбаланс классов только сместит ваши вероятности, но относительный порядок должен быть достаточно стабильным для большинства методов.

Логистическая регрессия хороша для дисбаланса класса, потому что, если у вас> 500 класса меньшинства, оценки параметров будут достаточно точными, и единственное влияние будет на перехват, который можно исправить, если это то, что вы могли бы хотеть. Логистическая регрессия моделирует вероятности, а не просто классы, так что вы можете сделать больше ручных корректировок в соответствии с вашими потребностями.

Многие методы классификации также имеют аргумент веса класса, который поможет вам больше сосредоточиться на классе меньшинства. Это накажет классификацию пропусков истинного класса меньшинства, так что ваша общая точность немного пострадает, но вы начнете видеть больше классов меньшинства, которые правильно классифицированы.


Не могли бы вы рассказать о том, что вы говорите "до тех пор, пока у вас> 500 представителей меньшинства"? Где ты взял это число 500? Это основано на вашем опыте? Я ожидал процент от вашего ответа.
Jas

2

Дисбаланс формально не определяется, но соотношение от 1 до 10 обычно не сбалансировано, чтобы извлечь выгоду из использования техники балансировки.

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

Обратите внимание, что прямая субсэмплинг не является оптимальным способом справиться с несбалансированным набором данных. Это потому, что вы должны построить классификатор, который будет хорошо работать на вашем исходном наборе данных. Технику построения классификаторов на несбалансированных наборах данных смотрите здесь . Для оценки вашего классификатора смотрите здесь .


2

Проблема дисбаланса данных? В теории речь идет только о цифрах. Даже если разница составляет 1 образец, это дисбаланс данных

На практике, говоря, что это проблема дисбаланса данных, контролируется тремя вещами: 1. Количество и распределение образцов, которые у вас есть 2. Различия в одном и том же классе 3. Сходство между различными классами

Последние два пункта меняют то, как мы рассматриваем нашу проблему.

Чтобы объяснить это, приведу пример: класс A = 100 образцов, класс B = 10 000

Если отклонение в пределах класса B очень низкое, то выборки с понижением будет достаточно, проблем с дисбалансом данных нет

Если вариация очень велика в пределах класса b, то понижающая выборка может привести к потере информации, и применять понижающую выборку опасно

Еще один момент - наличие большого количества выборок (в основном для меньшинства) ослабит проблему дисбаланса данных и облегчит решение

Например, 10: 100. 1000: 10 000

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.