Эта статья в основном резюмирует некоторые важные для меня на данный момент моменты из статьи Обучение на несбалансированных данных. Тем, кто заинтересован, настоятельно рекомендуется прочитать исходную статью, потому что она обеспечивает очень хорошее начало для изучения проблемы дисбаланса и охватывает гораздо больше тем и подробностей, чем я включил в эту статью.
В этой статье будут рассмотрены три основные темы:
- Природа проблемы.
- Техники.
- Метрики оценки.
Давайте погрузимся без дальнейших церемоний!
1. Характер проблемы
В этой теме есть несколько важных понятий:
- Разница между внутренним дисбалансом и внешним дисбалансом:
- Внутренний: дисбаланс является прямым результатом характера пространства данных. Например, биомедицинские приложения.
- Внешний: дисбаланс возникает из-за других факторов, таких как время и хранилище.
2. Разница между относительным дисбалансом и дисбалансом из-за редких случаев:
- Относительный дисбаланс: размер выборки класса меньшинства не обязательно мал сам по себе, но считается небольшим по сравнению с классом большинства.
- Дисбаланс из-за редких случаев: примеры класса меньшинств очень ограничены, что приводит к отсутствию репрезентативных данных.
3. Сложность набора данных является основным определяющим фактором ухудшения производительности. Однако ситуация усугубляется добавлением относительного дисбаланса.
4. Разница между дисбалансом между классами и дисбалансами внутри классов:
- Дисбаланс между классами: один класс значительно превосходит другой.
- Дисбаланс внутри класса: образцы из одного класса могут иметь разные концепции/свойства. Дисбаланс внутри класса возникает, когда примеры подпонятий очень ограничены.
На рисунке 2 межклассовый дисбаланс возникает между:
- (A+D) и (B+C), где (A+D) — класс большинства с разными концепциями, а (B+C) — класс меньшинства с разными концепциями.
тогда как внутриклассовый дисбаланс происходит между:
- А и Д
- Б и С
Также дисбаланс из-за редких экземпляров случается в C.
2. Методы
2.1. Методы выборки
Методы, которые выполняют модификацию несбалансированного набора данных с помощью некоторых механизмов, чтобы обеспечить сбалансированное распределение.
2.1.1. Случайно
2.1.1.1. Случайная передискретизация
Добавление набора образцов из класса меньшинства путем случайного увеличения случайно выбранных примеров меньшинства.
Проблема: несколько экземпляров определенных примеров становятся «связанными», что приводит к переоснащению.
2.1.1.2. Случайная недостаточная выборка
Случайным образом удалить набор большинства примеров.
Проблема: может привести к тому, что классификатор пропустит важные понятия, относящиеся к большинству классов.
2.1.2. Информированная недостаточная выборка
Цель: преодолеть недостаток потери информации, привносимый в традиционный метод случайной субдискретизации.
2.1.2.1. EasyEnsemble
Независимая выборка нескольких подмножеств (с заменой) из мажоритарного класса. Затем разрабатывается несколько классификаторов на основе комбинации каждого подмножества (из класса большинства) с данными класса меньшинства.
2.1.2.2. БалансКаскад
Систематически выбирайте, какие примеры большинства классов будут подвергнуты недостаточной выборке, удаляя примеры классов большинства, которые правильно классифицированы на предыдущем шаге, из пула, чтобы эти примеры не были выбраны на текущем и последующих шагах.
2.1.2.3. на основе KNN
2.1.2.3.1. Почти Мисс-1
Выберите примеры большинства, которые имеют наименьшее среднее расстояние до 3 ближайших примеров класса меньшинства.
2.1.2.3.2. Почти Мисс-2
Выберите примеры большинства, которые имеют наименьшее среднее расстояние до 3 самых дальних примеров класса меньшинства.
2.1.2.3.3. Почти Мисс-3
Выберите заданное количество ближайших примеров большинства для каждого примера меньшинства, чтобы гарантировать, что каждый пример меньшинства окружен некоторыми примерами большинства.
2.1.2.3.4. «Наибольшее расстояние»
Выберите примеры класса большинства, которые имеют наибольшее среднее расстояние до 3 ближайших примеров класса меньшинства.
2.1.3. Синтетическая выборка с генерацией данных
Цель: Разорвать связи, возникающие из-за простой передискретизации.
Как показано на рисунке 3, метод передискретизации синтетического меньшинства (SMOTE) создает искусственные данные на основе сходства пространства признаков между существующими примерами меньшинства.
В общем, для любого заданного примера класса меньшинства метод случайным образом выберет один из примеров класса меньшинства KNN и сгенерирует синтетический экземпляр на основе приведенного ниже уравнения:
Ограничение: чрезмерное обобщение и дисперсия. SMOTE генерирует одинаковое количество синтетических экземпляров для каждого исходного примера класса меньшинства без учета соседних примеров. Это увеличивает вероятность дублирования между классами.
2.1.4. Адаптивная синтетическая выборка
Цель: преодолеть ограничения SMOTE.
2.1.4.1. Граница — SMOTE
Только те экземпляры класса меньшинства, у которых больше соседей класса большинства, чем соседей класса меньшинства, выбираются для формирования набора «ОПАСНОСТЬ». Экземпляры в DANGER представляют собой пограничные примеры класса меньшинства (т. е. примеры, которые, скорее всего, будут неправильно классифицированы).
Затем набор DANGER передается алгоритму SMOTE для создания синтетических выборок меньшинства вблизи границ. При этом только те экземпляры класса меньшинства, которые находятся «ближе» к границе, используются для создания синтетических экземпляров.
2.1.4.2. АДА-СИН
Адаптивно генерируйте различные объемы синтетических данных в соответствии с распределением каждого экземпляра класса меньшинства.
Как правило, количество выборок, которые должны быть сгенерированы из экземпляра класса меньшинства, зависит от доли экземпляров класса большинства, существующих в KNN из этого экземпляра класса меньшинства.
Дополнительные выборки будут сгенерированы для тех экземпляров класса меньшинства, которые имеют высокую долю экземпляров класса большинства в KNN. Таким образом, ADA-SYN адаптивно изменяет веса различных примеров классов меньшинств, чтобы компенсировать асимметричное распределение.
2.1.5. Выборка с использованием методов очистки данных
2.1.5.1. Ссылки на Томек
Связи Томека — это пары минимально удаленных ближайших соседей противоположного класса. Если между двумя экземплярами есть связь Tomek, она показывает любой из двух фактов:
- Одним из таких случаев является шум.
- Оба экземпляра находятся рядом с границей между классами.
Следовательно, связь Tomek можно использовать для устранения нежелательного перекрытия между классами после синтетической выборки.
Таким образом, распределение кластеров классов лучше определено, что приводит к повышению производительности классификации.
2.1.5.2. Отредактирован ближайший сосед (ENN)
Удалите экземпляры, которые отличаются от двух из трех ближайших соседей.
2.1.5.3. Другое
Некоторые другие методы очистки:
- Односторонний выбор (OSS)
- Сжатое правило ближайшего соседа
Некоторые из работ, которые выполняют передискретизацию, а затем методы очистки:
- СМОТ+ENN
- SMOTE+Томек Ссылки
2.1.6. Кластерный метод выборки
Преимущество: может быть адаптировано для решения очень специфических задач.
2.1.6.1. Алгоритм кластерной передискретизации (CBO)
Цель: сначала решить проблему дисбаланса внутри класса, а затем проблему дисбаланса между классами.
Шаг 1: Возьмите случайный набор из K примеров из каждого кластера (для обоих классов) и определите центры кластеров, вычислив средний вектор признаков этих примеров.
Шаг 2: Остальные обучающие примеры представляются по одному и назначаются кластеру, который демонстрирует наименьшую величину вектора расстояния.
Шаг 3: Среднее значение кластера обновляется после добавления каждого обучающего примера. Шаги повторяются до тех пор, пока не будут исчерпаны все примеры (т. е. для каждого примера по существу обновляется только одно среднее значение кластера).
Шаг 4: Передискретизируйте все кластеры класса большинства, кроме кластеров с наибольшим количеством примеров, чтобы все кластеры класса большинства имели тот же размер, что и наибольшее число.
Шаг 5: Определите общее количество примеров большинства классов после процесса передискретизации.
Шаг 6: Передискретизируйте кластеры класса меньшинства, чтобы общее количество примеров класса меньшинства было того же размера, что и общее количество примеров класса большинства.
2.1.7. Интеграция сэмплирования и бустинга
2.1.7.1. SMOTE с Adaboost.M2.
Внедряйте синтетическую выборку на каждой итерации бустинга. Таким образом, каждый последующий ансамбль классификаторов больше фокусируется на примерах классов меньшинства (которые имеют плохой прогноз в предыдущей итерации).
2.1.7.2. DataBoost-IM
Синтетические образцы генерируются в соответствии с соотношением сложных для изучения образцов между классами.
Как правило, каждый пример из тренировочного набора взвешивается, чтобы представить относительную сложность обучения. Затем выбираются лучшие k самых высоких примеров для выполнения передискретизации. Эти сгенерированные образцы в основном представляют собой набор трудных для изучения образцов из обоих классов.
Однако, поскольку примеры класса меньшинства, как правило, более трудны для изучения, ожидается, что количество образцов класса меньшинства больше, чем количество образцов класса большинства.
7.3. Дрожание из-за пониженной дискретизации (JOUS-Boost)
Цель: Разорвать связи, возникшие в результате случайной передискретизации.
Внесите возмущения («дрожание») в дублированные выборки, полученные в результате передискретизации. Таким образом, это вводит независимо и одинаково распределенный шум на каждой итерации усиления.
Преимущество: Просто и быстро.
2.2. Чувствительные к стоимости методы
Они могут смягчить проблему дисбаланса, рассмотрев различные матрицы затрат, которые описывают затраты на неправильную классификацию любого примера.
Как правило, стоимость неправильной классификации примеров класса меньшинства самая высокая, за ней следует стоимость неправильной классификации примеров класса большинства. За правильную классификацию обоих классов плата не взимается. Цель здесь состоит в том, чтобы минимизировать общие затраты на обучение, которые обычно представляют собой условный риск Байеса.
Ограничение: доступно только при наличии матрицы затрат и связанных с ней элементов затрат.
Три основные категории из методов, чувствительных к затратам:
- Экономичное взвешивание пространства данных с адаптивным повышением
Чувствительные к затратам методы бутстрап-выборки, в которых затраты на ошибочную классификацию применяются для получения наилучшего распределения обучения для индукции. (Теорема перевода)
2. Классификаторы, чувствительные к затратам
Чувствительные к стоимости классификаторы разрабатываются путем интеграции стандартных алгоритмов обучения с ансамблевыми методами (инфраструктура Metacost).
3. Ядерные методы.
Здесь не будет.
2.2.1. Экономичное взвешивание пространства данных с адаптивным усилением
Статья затрат каждого примера вводится в уравнение адаптивного бустинга, что влияет на распределение обучения следующей итерации.
Как следствие, вероятность выборки дорогостоящего примера будет увеличена, что даст классификатору больше возможностей учиться на более дорогостоящих примерах.
Алгоритмы:
- АдаК1
- АдаК2
- АдаС3
- AdaCost: выполнение функции корректировки стоимости, которая агрессивно увеличивает веса дорогостоящих случаев неправильной классификации и уменьшает веса дорогостоящих примеров, которые правильно классифицированы консервативно.
2.2.2. Классификаторы с учетом затрат
2.2.2.1. Деревья принятия решений с учетом затрат
Три метода внедрения чувствительной к затратам концепции в деревья решений:
- Применяется к порогу принятия решения.
- Применяется к критериям разделения на каждом узле.
- Применяется в схемах обрезки.
Применяется к порогу принятия решения.
ROC используется для определения оптимального порога принятия решения.
Применяется к критериям разделения на каждом узле.
Джини, энтропия и DKM используются в качестве чувствительной к стоимости функции в критериях разделения.
В общем, функция DKM создает меньшие необрезанные деревья решений с многообещающей производительностью.
Применяется к схемам сокращения.
Обрезка — это процесс удаления листьев с оценкой вероятности класса ниже заданного порога. Это помогает улучшить общее обобщение.
Обрезка имеет тенденцию удалять листья, описывающие концепцию класса меньшинства. Однако исследования также показали, что необрезанные деревья в несбалансированном наборе данных не улучшают производительность. Другими словами, нет никакого эффекта с обрезкой деревьев и без нее, когда речь идет о несбалансированном наборе данных.
Следовательно, исследователи сосредоточены на улучшении оценки вероятности класса в каждом узле, чтобы разработать более репрезентативную структуру дерева решений. Некоторые из работ - это метод сглаживания Лапласа для оценки вероятности и метод обрезки Лапласа.
2.2.2.2. Экономичные нейронные сети
Существует четыре основных подхода к внедрению чувствительной к стоимости концепции в нейронные сети:
- Применяется к вероятностной оценке.
- Применяется к выходам нейронных сетей.
- Применяется к скорости обучения.
- Измените исходную функцию минимизации ошибок (то есть функцию стоимости) на функцию минимизации ожидаемых затрат.
Применяется к вероятностной оценке.
Вероятностная оценка нейронной сети адаптивно модифицируется на этапе тестирования.
Применяется к выходным данным нейронных сетей.
Выходные данные нейронной сети изменяются на этапе обучения, поэтому нейронная сеть вынуждена больше ориентироваться на высокозатратный класс.
Применяется к скорости обучения.
Назначайте меньшую скорость обучения для дорогостоящих примеров и большую скорость обучения для недорогих примеров. Таким образом, он вводит очень эффективное обучение и дает улучшения по сравнению с базовым классификатором.
Замените исходную функцию минимизации ошибок (т. е. функцию стоимости) на функцию минимизации ожидаемых затрат.
Самый доминирующий.
2.3. Дополнительные методы
2.3.1. Обучение в одном классе
Одноклассовое обучение выгодно при работе с чрезвычайно несбалансированными наборами данных с высокой размерностью пространства признаков. Некоторые из работ:
- Автоэнкодер можно использовать для восстановления положительного класса на выходном уровне.
- Новые методы обнаружения подходят для применения к наборам данных с серьезной несбалансированностью, тогда как обычные индуктивные классификаторы на основе дискриминации подходят для обработки значительно умеренно несбалансированного обучения.
- Система Махаланобиса-Тагучи (MTS), которую она изучает путем разработки шкалы непрерывных измерений с использованием примеров одного класса, эффективна при работе с асимметричным распределением данных.
- Для определения оптимального порога классификации МТС применяется вероятностный пороговый метод, основанный на теореме Чебышева.
2.3.2. Небольшой размер выборки и несбалансированное обучение
- Метрики ранга используются в качестве обучения для работы с несбалансированными данными с малыми размерами выборки и высокой размерностью, делая упор на различение самих классов, а не на внутреннюю структуру классов. Кроме того, вместо традиционной метрики точности используются критерии выбора модели.
- Методология многозадачного обучения, которая использует общее представление данных для обучения дополнительных моделей задач, связанных с основной задачей. При этом эффективный размер недопредставленного класса увеличивается за счет добавления к данным дополнительной обучающей информации.
3. Показатели оценки несбалансированного обучения
Метрики оценки, используемые для несбалансированного обучения:
- Точность
- Отзывать
- F-оценка
- G-среднее
- Кривые Precision-Recall (PR)
3.1. Точность
Точность описывает, сколько правильно помечено из примеров, помеченных как положительные.
3.2. Отзывать
Вспомнить описывает, сколько примеров с положительной маркировкой на самом деле являются правильными.
3.3. F-оценка
F-оценка сочетает в себе как точность, так и полноту, поскольку их вклад можно регулировать на основе коэффициента.
Бета по умолчанию равна 1, что дает одинаковый вклад как в полноту, так и в точность. Более низкая бета (например, 0,5) придает больший вес точности; тогда как более высокая бета (например, 2) дает больший вес для припоминания.
3.4. G-среднее
G-mean фокусируется на оценке степени индуктивного смещения с точки зрения соотношения положительной точности и отрицательной точности.
3.5. Разница между кривой рабочих характеристик приемника (ROC) и кривыми точного отклика (PR)
Кривая PR является лучшим вариантом при оценке производительности модели с несбалансированным набором данных. Разница между ROC и кривой PR указана в таблице 1.
Пример исходного кода:
https://github.com/JaniceKhor/imbalance.git
Ссылки
Х. Хе и Э. А. Гарсия, «Обучение на несбалансированных данных», в IEEE Transactions on Knowledge and Data Engineering, vol. 21, нет. 9, стр. 1263–1284, сентябрь 2009 г., doi: 10.1109/ТКДЭ.2008.239.