Как определить класс меньшинства/большинства в задаче многоклассовой классификации

Вопрос или проблема

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

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

Я был бы признателен за помощь в этом, особенно если у вас есть какие-либо ссылки, которые я могу прочитать.

Спасибо

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

Таким образом, мой основной ответ: не проводите повторную выборку 🙂

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

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

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

Многие реальные задачи классификации имеют длинный хвост категорий с относительно небольшим количеством примеров. Наиболее распространенные прагматичные подходы:

  • Убрать экземпляры, где категория имеет относительно немного примеров
  • Объединить категории в новую универсальную категорию, т.е. «мусорное ведро»
  • Использовать знания в данной области для объединения категорий

Результат — меньше категорий с большим количеством примеров в каждой категории. Все равно будут категории с большим или меньшим количеством примеров, т.е. меритарные/миноритарные категории. Затем можно применять другие подходы (например, повторную выборку или веса классов).

Ответ или решение

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

Понимание концепции классов меньшинства и большинства

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

  1. Класс большинства — это класс, в котором наибольшее количество примеров. Он может содержать десятки тысяч экземпляров.
  2. Класс меньшинства — это класс с наименьшим количеством примеров, который может насчитывать менее ста экземпляров.

Научный подход к определению классов

Хотя классификация на большинство и меньшинство является интуитивной, важно подойти к определению более системно:

  1. Установите порог: Один из способов определения классов заключается в установлении порога для различия. Например, вы можете считать классы меньшинства те классы, количество примеров в которых ниже определенного значения, например, 5% от общего количества примеров.
  2. Анализ распределения классов: Постройте график распределения классов. Это поможет визуально оценить, какие классы являются мажоритарными, а какие — миноритарными.
  3. Статистические показатели: Вы можете использовать такие метрики, как среднее и стандартное отклонение для определения того, какие классы значительно отклоняются от средних значений.

Практические рекомендации

Хотя теоретические подходы имеют значение, на практике важно также рассмотреть подходы, которые помогут улучшить модель:

  1. Группировка классов: Рассмотрите возможность объединения классов, у которых схожие характеристики. Это может сократить количество классов и дополнительно увеличить количество экземпляров в каждом классе.
  2. Исключение редких классов: Если класс имеет слишком малое количество примеров, рассмотрите возможность его исключения из анализа.
  3. Использование весов классов: Применение различных весов для классов при обучении модели может помочь компенсировать дисбаланс, не прибегая к изменениям в наборе данных.
  4. Методы переобучения: Если вы все-таки решите использовать переобучение, делайте это с осторожностью. Разумнее устанавливать желаемое количество экземпляров для каждой категории, чтобы избежать чрезмерного вмешательства в данные.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...