Введение

В машинном обучении несбалансированные наборы данных являются распространенной и сложной проблемой. Как специалисты по данным, мы часто оказываемся в ситуациях, когда мы пытаемся построить модели с данными, где один класс значительно превосходит другой по численности. Классическим решением этой проблемы было использование методов избыточной/недостаточной выборки. Эти методы уравновешивают данные, либо увеличивая экземпляры класса меньшинства (избыточная выборка), либо уменьшая экземпляры класса большинства (недостаточная выборка). Но после многих проектов и большого опыта я пришел к выводу, что эти методы — не лучший способ справиться с несбалансированными наборами данных. В самом деле, я объявил себя врагом № 1 методов избыточной/недостаточной выборки, и вот почему.

Передискретизация/недостаточная выборка: не так эффективна, как вы думаете

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

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

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

Искажение исходного распределения данных. Возможно, наиболее важной проблемой при избыточной/недостаточной выборке является искажение исходного распределения данных. Суть машинного обучения заключается в изучении закономерностей, присущих данным. Когда мы манипулируем распределением данных с помощью этих методов, мы изменяем эти присущие модели. Модель может хорошо работать с обработанными данными, но как только она подвергнется воздействию реальных данных с исходным распределением, ее производительность может резко ухудшиться. Это может привести к тому, что модели не будут давать желаемых результатов при развертывании в реальных приложениях.

Расхождения в показателях производительности. Более того, балансировка классов может привести к расхождениям в показателях производительности. Например, использование избыточной/недостаточной выборки для балансировки распределения классов может искусственно повысить точность модели. Однако это не означает, что модель будет одинаково хорошо работать на несбалансированных данных реального мира. Мы можем получить модель, которая кажется впечатляющей во время тестирования, но не дает удовлетворительных результатов, когда это важнее всего.

Альтернативы: лучшие способы справиться с дисбалансом

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

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

Используйте лучшие показатели оценки.Точность — не всегда лучший показатель для использования при работе с несбалансированными данными. Следовательно, вместо того, чтобы сосредотачиваться на общей точности, мы должны использовать более подходящие метрики, учитывающие как классы большинства, так и классы меньшинства. К ним относятся точность, полнота, оценка F1 или площадь под кривой рабочих характеристик приемника (AUC-ROC). Среди них кривая Precision-Recall является очень мощным инструментом для несбалансированных наборов данных, поскольку она фокусируется непосредственно на классе меньшинства и может дать более значимую информацию о производительности модели.

Методы ансамбля. Методы ансамбля, такие как бэггинг и бустинг, могут быть эффективны при работе с несбалансированными данными. Например, Random Forest, метод мешков, может гарантировать, что каждое дерево в ансамбле обучается на сбалансированном подмножестве данных. Эти методы строят несколько моделей и объединяют их прогнозы, что часто приводит к более надежным и надежным моделям, чем может обеспечить одна модель.

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

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

Заключение: более продуманный подход к несбалансированным данным

Обработка несбалансированных данных — непростая задача, и универсального решения не существует. Хотя методы избыточной/недостаточной выборки занимают свое место в наборе инструментов специалиста по данным, важно понимать их потенциальные ловушки и ограничения. Дело не только в балансировке классов; речь идет о поддержании целостности наших данных и создании моделей, которые действительно могут учиться на них и обобщать невидимые данные.

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

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