Глубокие техники обработки/замены отсутствующих значений при преобразовании признаков’.

Эффективные методы обработки и замены отсутствующих значений в анализе признаков

Заполнение пропущенных данных для проекта машинного обучения и науки о данных

Фото Эмиля Перрона на Unsplash

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

Что такое заполнение?

Это процесс назначения или замещения отсутствующего значения строки/столбца на желаемое/расчитанное значение.

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

  1. Удаление: Самый простой метод – удалить строку, в которой отсутствует значение. Этот метод также можно назвать анализом полного случая (CCA). Этот метод полезен, если процент отсутствующего значения составляет менее 5% в признаке, иначе возможны проблемы с потерей данных.
  2. Заполнение: Такой метод заключается в заполнении отсутствующих данных некоторым расчитанным значением. Заполнение подразделяется на два метода на основе одномерных и многомерных признаков.
  • Одномерные: В случае числового признака отсутствующие данные могут быть заменены средним/медианным/случайным значением. В случае категориального признака отсутствующие значения могут быть заменены модой или как отсутствующая строка. Библиотека sklearn предоставляет класс Simple Imputer, который обрабатывает отсутствующие значения одномерных признаков.
  • Многомерные: В этом методе отсутствующее значение будет заполнено с использованием алгоритма KNN imputer (imputation метода Hot-Deck) и итеративного метода, то есть MICE.
  • Временные ряды: В этом случае можно использовать линейную интерполяцию, методы прямого заполнения и обратного заполнения.

Шаблоны пропущенных данных.

  1. MCAR: Данные пропущены полностью случайно, при этом отсутствующие данные не зависят от значений, указанных в столбце. Они отсутствуют случайно, независимо и без предубеждений.
  2. MAR: Данные пропущены случайно и зависят от значения другого столбца.
  3. MNAR: Данные пропущены не случайно, а