Машинное обучение (13) Краткое изложение методов обработки пропущенных значений

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

1 Причины отсутствия значений

  • Механические причины вызываются механическими причинамиданныеОтсутствующие данные из-за сбоя при сборе или сохранении, например сбоя при сохранении данных, повреждения памяти или механического сбоя, в результате которого данные не собираются в течение определенного периода времени (для сбора данных по времени).
  • Человеческой причиной является отсутствие данных из-за субъективных ошибок человека, исторических ограничений или намеренного сокрытия.Например, в обзоре рынка респондент отказался раскрыть ответы на соответствующие вопросы, или ответы на вопросы были недействительными, а данные входной персонал допустил ошибки и пропустил записи данных.

2 Типы пропущенных значений

  • Полное случайное отсутствие (MCAR) означает, что пропущенные данные являются случайными, и пропущенные данные не зависят ни от каких неполных или полных переменных.
  • Отсутствующие случайно (MAR) означает, что отсутствующие данные не являются полностью случайными, то есть отсутствие данных этого типа зависит от других полных переменных. Не случайное отсутствие (MNAR) означает, что недостающие данные зависят от самой неполной переменной.

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

3 Что делать с пропущенными значениями

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

3.1 Удалить данные с пропущенными значениями

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

Если в наборе данных есть один или несколько столбцов, которые нужно удалить, мы можем просто удалить весь столбец.

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

3.2 Возможное вменение отсутствующих значений

(1) Средняя интерполяция. Атрибуты данных делятся на обычные и без интервалов. Если отсутствующее значение относится к интервальному типу, используйте среднее значение существующего значения атрибута для вменения отсутствующего значения; если отсутствующее значение относится к недистанционному типу, используйте режим атрибута в соответствии с принципом режима в статистика (то есть наиболее часто встречающееся значение), чтобы заполнить пропущенные значения.

(2) Используйте интерполяцию среднего того же класса. Все методы вменения с одним и тем же средним значением являются методами вменения с одним значением.Разница в том, что он использует модель иерархической кластеризации для прогнозирования типа отсутствующих переменных, а затем использует среднее значение этого типа для вменения. Предполагая, что X=(X1, X2...Xp) — переменная с полной информацией, а Y — переменная с пропущенными значениями, тогда сначала кластер X или его подмножество, а затем вменение среднего значения различных классов в соответствии с классом которым принадлежат пропавшие дела. Если введенные объясняющие переменные и Y необходимо использовать для анализа в будущем статистическом анализе, то этот метод вменения внесет в модель автокорреляцию, что создаст препятствия для анализа.

(3) Оценка максимального правдоподобия (Максимальное правдоподобие, ML). При условии, что отсутствующий тип отсутствует случайным образом, предполагая, что модель верна для полной выборки, неизвестные параметры могут быть оценены по максимальному правдоподобию (Литтл и Рубин), наблюдая за маргинальным распределением данных. Этот метод также называется оценкой максимального правдоподобия с игнорированием пропущенных значений, а метод расчета, часто используемый на практике для оценки параметра максимального правдоподобия, - это максимизация ожидания (EM). Этот метод более привлекателен, чем удаление случаев и вменение единичного значения, и у него есть важная предпосылка: он подходит для больших выборок. Количество действительных выборок достаточно, чтобы гарантировать, что оценки ML являются асимптотически несмещенными и нормально распределенными. Но этот метод может застрять в локальных экстремумах, скорость сходимости не очень высока, а расчет сложен.

(4) Множественное вменение (Multiple Imputation, MI). Идея многозначного вменения исходит из байесовской оценки, которая считает, что вмененное значение является случайным, а его значение исходит из наблюдаемого значения. На практике интерполируемое значение обычно оценивается, а затем добавляются различные шумы для формирования нескольких наборов необязательных интерполируемых значений. В соответствии с определенной основой выбора выберите наиболее подходящее значение интерполяции.

4 ссылки