Машинное обучение

История отсутствующих данных

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

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

В имеющемся наборе данных отсутствуют значения признаков или целевые значения.

Классификация отсутствующих данных по причине отсутствия

Отсутствующие данные в основном классифицируются на 3 -

  1. Отсутствует случайным образом (MAR) - потому что причину, по которой случайное значение отсутствует в функции (предикторе) или цели, можно понять из самого исследовательского анализа данных. (Подробнее об этом читайте здесь)
  2. Отсутствует полностью случайно (MCAR) - нет ничего подозрительного, пропадание абсолютно случайное! (Подробнее об этом читайте здесь)
  3. Отсутствуют не случайно (MNAR) - наиболее неблагоприятная ситуация для энтузиастов машинного обучения или студентов, поскольку причину отсутствия здесь можно объяснить, но не с помощью переменных, которые есть в вашем наборе данных. Эта ситуация требует тщательного изучения начального этапа анализа данных - сбора данных! (Подробнее об этом читайте здесь)

Классификация отсутствующих данных на основе переменных

Переменные в основном бывают двух типов, в терминологии машинного обучения:

  1. Возможности / Предикторы и
  2. Цель

Таким образом, отсутствующие данные можно найти в обеих этих переменных и, следовательно, их можно классифицировать следующим образом:

а. Отсутствие данных в переменных функции или отсутствие функции.

б. Отсутствуют данные в целевой переменной или target-missing - этот вид отсутствия также называется отсутствующим классом, если целевая переменная является дискретной по своей природе, как в проблема бинарной или мультиклассовой классификации. В случае непрерывной целевой переменной по умолчанию может использоваться термин отсутствует цель.

Последствия отсутствия данных и как с ними бороться

Отсутствие данных ставит две основные проблемы:

  1. Потеря информации - эта проблема связана с отсутствием функции, и лучший способ справиться с ней - использовать методы вменения. Некоторые из методов вменения: среднее, медианное значение, мода или вменение постоянного значения.
  2. Несбалансированный набор данных - эта проблема связана только с отсутствием класса, а не со случаем отсутствия цели. Это одна из основных проблем в большинстве задач классификации. Решением этой проблемы является использование таких методов, как - методы избыточной или недостаточной выборки. Если есть проблема с отсутствием цели, я бы порекомендовал удалить точку данных, соответствующую каждому случаю отсутствия цели.

Отбросить или вменять?

Следующие стратегии являются моими собственными, и им следует придавать значение только как таковые:

Если отсутствуют значения ›5% для случая отсутствия функции - отбросьте сам элемент, иначе выполните вменение функции или функций.

5% или 10% или любой верхний предел - решать вам.

Основная идея заключается в том, что слишком много вменений - это изменение поведения базового распределения.

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

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

Класс большинства и класс меньшинства

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

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

Недостаточная выборка - это противоположность избыточной выборки: она удаляет некоторые точки данных большинства классов, чтобы обеспечить идеальный баланс набора данных.

Некоторые методы передискретизации -

  1. Бутстреппинг или повторная выборка (выборка с заменой) - включает избыточную и недостаточную выборку
  2. Технология передискретизации синтетических меньшинств (SMOTE) и
  3. ADAptive SYNthetic выборочный подход (ADASYN)

Некоторые методы недостаточной выборки -

  1. Недостаточная выборка Томек-Линкс
  2. Кластерные центроиды

Гибридная техника - передискретизация + недискретизация

  1. SMOTE, за которым следует Tomek-Links

См. Простую записную книжку Kaggle о технике передискретизации для несбалансированных наборов данных - здесь

Все API-интерфейсы методов избыточной и недостаточной выборки доступны в учебном пособии Несбалансированное обучение.

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

  1. Средний - https://medium.com/@danberdov/types-of-missing-data-902120fa4248
  2. Средний - https://medium.com/coinmonks/smote-and-adasyn-handling-imbalanced-data-set-34f5223e167
  3. Kaggle - https://www.kaggle.com/rafjaa/resampling-strategies-for-imbalanced-datasets
  4. Sci-kit learn @Github - https://github.com/scikit-learn-contrib/imbalanced-learn