Передискретизация и недостаточная выборка при анализе данных


Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Передискретизация и недостаточная выборка в анализе данных - это методы, используемые для корректировки распределения классов в наборе данных (т. Е. Соотношения между различными представленными классами / категориями). Эти термины используются как в статистической выборке, так и в методологии разработки опросов, а также в машинном обучении .

Передискретизация и недостаточная выборка - противоположные и примерно эквивалентные методы. Существуют также более сложные методы передискретизации, включая создание искусственных точек данных с помощью таких алгоритмов, как техника передискретизации синтетического меньшинства . [1] [2]

Мотивация для передискретизации и недостаточной выборки

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

  1. Недостаточное представление класса в одной или нескольких важных переменных-предикторах. Предположим, что для решения вопроса о гендерной дискриминации у нас есть данные обследования заработной платы в определенной области, например, компьютерное программное обеспечение. Известно, что женщины значительно недопредставлены в случайной выборке инженеров-программистов, что будет важно при корректировке на другие переменные, такие как стаж работы и текущий стаж. Предположим, только 20% разработчиков программного обеспечения - женщины, т. Е. Мужчин в 4 раза чаще, чем женщин. Если бы мы разрабатывали опрос для сбора данных, мы бы опросили в 4 раза больше женщин, чем мужчин, так что в окончательной выборке оба пола будут представлены в равной степени. (См. Также Стратифицированная выборка .)
  2. Недопредставленность одного класса в выходной (зависимой) переменной. Предположим, мы хотим предсказать на основе большого набора клинических данных, у каких пациентов может развиться конкретное заболевание (например, диабет). Однако предположим, что только у 10% пациентов развивается болезнь. Предположим, у нас есть большой существующий набор данных. Затем мы можем выбрать в 9 раз большее количество пациентов, у которых не развилось заболевание, на каждого пациента, у которого это заболевание появилось.


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

  • Эксперты предметной области предложат специальные средства проверки для набора данных, включающие не только проверки внутри переменных (допустимые значения, максимальные и минимально возможные допустимые значения и т. Д.), Но и проверки между переменными. Например, все отдельные компоненты дифференциального подсчета лейкоцитов в сумме должны составлять 100, потому что каждый представляет собой процент от общего количества.
  • Данные, встроенные в повествовательный текст (например, стенограммы интервью), должны быть вручную закодированы в дискретные переменные, с которыми может справиться пакет статистического или машинного обучения. Чем больше данных, тем больше усилий по кодированию. (Иногда кодирование может быть выполнено с помощью программного обеспечения, но часто кто-то должен написать для этого индивидуальную разовую программу, и выходные данные программы должны быть проверены на точность с точки зрения ложноположительных и ложноотрицательных результатов.)

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

Методы передискретизации для задач классификации

Случайная передискретизация

Случайная передискретизация включает в себя дополнение обучающих данных несколькими копиями некоторых классов меньшинства. Передискретизация может выполняться более одного раза (2x, 3x, 5x, 10x и т. Д.). Это один из самых ранних предложенных методов, который также оказался надежным. [3] Вместо того, чтобы дублировать каждую выборку в классе меньшинства, некоторые из них могут быть выбраны случайным образом с заменой.

SMOTE

Существует ряд методов, доступных для передискретизации набора данных, используемого в типичной задаче классификации (с использованием алгоритма классификации для классификации набора изображений с учетом помеченного обучающего набора изображений). Наиболее распространенный метод известен как SMOTE: метод передискретизации синтетических меньшинств. [4] Чтобы проиллюстрировать, как работает этот метод, рассмотрим некоторые обучающие данные, которые имеют s выборок и f функций в пространстве признаков данных. Обратите внимание, что эти функции для простоты являются непрерывными. В качестве примера рассмотрим набор данных о птицах для классификации. Пространством признаков для класса меньшинства, для которого мы хотим произвести избыточную выборку, могут быть длина клюва, размах крыльев и вес (все непрерывно). Чтобы затем выполнить передискретизацию, возьмите образец из набора данных и рассмотрите егоk ближайших соседей (в пространстве признаков). Чтобы создать точку синтетических данных, возьмите вектор между одним из этих k соседей и текущей точкой данных. Умножьте этот вектор на случайное число x, которое находится между 0 и 1. Добавьте его к текущей точке данных, чтобы создать новую точку синтетических данных.

С момента его предложения в метод SMOTE было внесено множество модификаций и расширений. [5]

АДАСИН

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

Увеличение

Увеличение данных при анализе данных - это методы, используемые для увеличения объема данных путем добавления слегка измененных копий уже существующих данных или вновь созданных синтетических данных из существующих данных. Он действует как регуляризатор и помогает уменьшить переобучение при обучении модели машинного обучения. [7] (См .: Увеличение данных )

Методы недостаточной выборки для задач классификации

Случайная недостаточная выборка

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

Кластер

Центроид кластера - это метод, который заменяет кластер выборок центроидом кластера алгоритма K-средних, где количество кластеров задается уровнем недостаточной выборки.

Томек ссылки

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

Недовыборка с ансамблевым обучением

Недавнее исследование показывает, что комбинация недостаточной выборки с ансамблевым обучением может достичь лучших результатов, см. IFME: фильтрация информации по нескольким примерам с недостаточной выборкой в ​​среде цифровой библиотеки. [8]

Дополнительные техники

Можно объединить методы передискретизации и недостаточной выборки в гибридную стратегию. Общие примеры включают в себя ссылки SMOTE и Tomek или SMOTE и отредактированные ближайшие соседи (ENN). Дополнительные способы обучения на несбалансированных наборах данных включают взвешивание обучающих примеров, введение различных затрат на неправильную классификацию для положительных и отрицательных примеров и самонастройку. [9]

Реализации

  • В пакете imbalanced-learn [1], совместимом с интерфейсом Python scikit-learn , реализованы различные методы повторной выборки данных. Методы повторной выборки реализованы в четырех различных категориях: недостаточная выборка класса большинства, передискретизация класса меньшинства, объединение избыточной и недостаточной выборки и объединение выборки.
  • Реализация Python 85 техник передискретизации меньшинства с функциями выбора модели доступна в пакете smote-options [2] .

Смотрите также

  • Выборка (статистика)
  • Увеличение данных

использованная литература

  1. ^ а б https://github.com/scikit-learn-contrib/imbalanced-learn
  2. ^ а б https://github.com/analyticalmindsltd/smote_variants
  3. ^ Лин, Чарльз Х. и Chenghui Ли. «Интеллектуальный анализ данных для прямого маркетинга: проблемы и решения». Kdd . Vol. 98. 1998.
  4. ^ Чавла, штат Невада; Бойер, кВт; Холл, LO; Кегельмейер, WP (2002-06-01). "SMOTE: Техника передискретизации синтетического меньшинства" . Журнал исследований искусственного интеллекта . 16 : 321–357. arXiv : 1106.1813 . DOI : 10.1613 / jair.953 . ISSN  1076-9757 .
  5. ^ a b Chawla, Nitesh V .; Эррера, Франсиско; Гарсия, Сальвадор; Фернандес, Альберто (20.04.2018). «SMOTE для изучения несбалансированных данных: успехи и проблемы, к 15-летнему юбилею» . Журнал исследований искусственного интеллекта . 61 : 863–905. DOI : 10.1613 / jair.1.11192 . ISSN 1076-9757 . 
  6. ^ http://sci2s.ugr.es/keel/pdf/algorithm/congreso/2008-He-ieee.pdf
  7. ^ Сократите, Коннор; Хошгофтаар, Таги М. (2019). «Обзор по увеличению графических данных для глубокого обучения» . Математика и компьютеры в моделировании . спрингер. 6 : 60. DOI : 10,1186 / s40537-019-0197-0 .
  8. ^ Чжу, Минчжу; Сюй, Чао; У, И-Фан Брук (22.07.2013). IFME: фильтрация информации по множеству примеров с недостаточной выборкой в ​​среде цифровой библиотеки . ACM. С. 107–110. DOI : 10.1145 / 2467696.2467736 . ISBN 9781450320771.
  9. ^ Хайбо Хэ; Гарсия, EA (2009). «Обучение на несбалансированных данных». IEEE Transactions по разработке знаний и данных . 21 (9): 1263–1284. DOI : 10.1109 / TKDE.2008.239 .
  • Чавла, Нитеш В. (2010) Интеллектуальный анализ данных для несбалансированных наборов данных: обзор doi : 10.1007 / 978-0-387-09823-4_45 В: Маймон, Одед; Rokach, Lior (Eds) Data Mining and Knowledge Discovery Handbook , Springer ISBN 978-0-387-09823-4 (страницы 875–886) 
  • Лемэтр, Г. Ногейра, Ф. Аридас, Ч.К. (2017) Несбалансированное обучение: набор инструментов Python для борьбы с проклятием несбалансированных наборов данных в машинном обучении , Журнал исследований в области машинного обучения, т. 18, нет. 17, 2017, с. 1-5.
Получено с https://en.wikipedia.org/w/index.php?title=Oversampling_and_undersampling_in_data_analysis&oldid=1049017540 "