Описание проблемы

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

Перед аналитиком стоит задача решить, следует ли пропустить определенную запись для анализа или заменить отсутствующее значение замещающим значением. Однако здесь аналитик должен решить, какой процент отсутствующих значений для данной переменной все еще может быть условно исчислен. Вменение переменной с 10% пропущенных значений не считается проблемой. Но как насчет ситуации с 30 %, 50 % или более пропущенных значений?

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

Сводка результатов

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

Еда на вынос

Обсудите не только «приемлемый процент отсутствующих значений» в ваших данных.
Обсудите, «почему» они отсутствуют и происходит ли это при оценке.

Основные сценарии моделирования

Случайные и систематические пропущенные значения

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

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

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

Моделирование, которое выполняется для оценки влияния пропущенных значений во входных переменных, должно различаться тем, содержит ли раздел данных, используемый для оценки качества модели, также вставленные пропущенные значения.

Моделирование проводилось для следующих двух случаев:

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

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

  • Этот сценарий относится к ситуациям, когда проблемы с качеством данных, такие как отсутствующие значения, возникают не только на этапе обучения модели, но и во время применения модели.
  • Этот случай отражает ситуацию, когда проблемы с качеством данных не могли (пока) быть устранены и присутствуют в данных обучения и оценки.
  • Отсутствующие значения в данных оценки заменяются логикой вменения, которая была определена на этапе обучения модели с помощью узла Вменение. Соответствующая логика вменения является частью кода оценки SAS Enterprise Miner.

Процедура моделирования

Предварительная обработка

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

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

  • Если переменная имеет более 5 % пропущенных значений → переменная удаляется
  • Наблюдения с отсутствующими значениями для остальных переменных (≤ 5% отсутствующих значений) удаляются из анализа.

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

Запуск моделирования

На следующем графике показана процедура моделирования и ее оценка. Данные разделены на данные обучения и проверки. Тестовый раздел используется в качестве «оценочных данных» для отражения набора данных, который не использовался при обучении модели. Это позволяет оценить влияние пропущенных значений на оценку модели.

В данные вводятся различные типы пропущенных значений (случайные, систематические) (только данные обучения, данные обучения и оценки). Количество пропущенных значений увеличивается при моделировании с шагом 10% (0 %, 10 %, 20 %, … 90 %).

Вменение суррогатного дерева (как реализовано в узле IMPUTE в SAS Enterprise Miner, дополнительные сведения см. в конце этой статьи) используется для вменения отсутствующих значений.

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

Возможная систематическая ошибка моделей в сценариях моделирования

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

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

Результаты симуляции

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

Случайные пропущенные значения только в обучающих данных

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

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

В своей статье Обзор машинного обучения с помощью SAS® Enterprise Miner Патрик Холл и др. опишите применение шумоподавляющего автоэнкодера. Они также показывают, что добавление некоторого случайного шума к обучающим данным может усилить автоэнкодер, чтобы он лучше справлялся со свежими и невидимыми данными. Аналогичный случай может иметь место и в случае, когда обучающие данные смещены, но только случайным образом.

Случайные пропущенные значения в данных обучения и оценки

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

В то время как качество модели практически не снижается в случае только обучающих данных для 30% пропущенных значений, уже наблюдается существенное снижение %Response с 19,0 до 15,6, когда и обучающие данные, и данные оценки содержат пропущенные значения. В относительных числах качество модели падает до 81,9% по сравнению со случаем отсутствия пропущенных значений.

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

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

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

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

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

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

Эта диаграмма показывает сильное снижение качества модели с увеличением процента пропущенных значений. Также видно, что при 70% и более отсутствующих значений показатель %Response даже попадает под 5% (пунктирную) линию. Линия 5% представляет базовую частоту событий в обучающих данных, которая должна быть достигнута с помощью случайной модели. Систематические пропущенные значения в этом диапазоне настолько сильно влияют на модель, что она даже не дает таких прогнозов, как случайная модель.

Всего лишь с 10 % пропущенных значений показатель %Response падает до 15,6 %, что означает, что теряется почти 18 % предсказательной силы модели идеального мира.

Обсуждение результатов и многомерная количественная оценка

Широкий диапазон четырех линий по разным процентам отсутствующих значений показывает, насколько важно четко различать разные типы отсутствующих значений.

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

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

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

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

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

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

Многомерная количественная оценка

Чтобы количественно оценить влияние следующих трех потенциально влияющих факторов на качество модели, измеряемое %Response, линейная модель Response = f (%missing, Systematic MV, MV in Scoring) была запущена на эти данные:

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

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

  • Пересечение: 19,29 → Это оценка для 0 % пропущенных значений, когда смещены только обучающие данные.
  • Процент отсутствующих значений: -0,0996 → %Response уменьшается в среднем на 0,1 процентного пункта за каждый дополнительный процентный пункт отсутствующих значений.
  • ScoringData: -4,23 → %Response уменьшается в среднем на -4,23 процентных пункта, если и данные обучения, и данные оценки необъективны.
  • RandomSystematic=Random: 3,6→ %Response в среднем на 3,6 процентных пункта выше, если пропущенные значения встречаются случайным образом.

Расчет бизнес-кейса

Введение

Вымышленная эталонная компания используется для расчета экономического обоснования на основе результатов различных сценариев моделирования. Изменение качества модели переводится в коэффициент отклика, а соответствующая прибыль выражается в долларах США.

Это сделано для того, чтобы проиллюстрировать влияние различных изменений качества данных с точки зрения бизнеса. В качестве предостережения цифры в долларах США следует рассматривать только как приблизительные показатели, основанные на предположениях о сценариях моделирования и экономическом обосновании, как описано здесь. В отдельных случаях эти значения и отношения несколько отличаются.

Эталонная компания Quality DataCom

Эталонная компания Quality DataCom, описанная в следующих главах, работает в сфере связи. У компании 2 миллиона клиентов, и она проводит кампании по продвижению перекрестных и дополнительных продаж своих продуктов и услуг. В типичной кампании обычно связываются около 100 000 клиентов (5% клиентской базы) с наибольшей вероятностью отклика. Средняя реакция клиента на предложение (предложение о покупке или обновлении продукта) представляет собой прибыль в размере 25 долларов.

Предположим, вы используете аналитическую модель, которая правильно предсказывает 19% положительных ответов в верхних 5% клиентской базы. Ответ здесь означает, что контакт кампании приводит к покупке или обновлению продукта. Это приводит в общей сложности к 19 000 ответивших клиентов в этой кампании, которые приносят прибыль в размере 475 000 долларов США (19 000 x 25 долларов США).

Полученные результаты

Для эталонной компании анализ сценария недостающей стоимости показывает следующее:

  • Сокращение пропущенных значений с 50% до 30% означает дополнительную прибыль в размере 47 500 долларов США (2 375 долларов США на процентный пункт).
  • Сокращение пропущенных значений с 30% до 10% обеспечивает дополнительную прибыль в размере 62 500 долларов США. Это составляет 3125 долларов США за процентный пункт.
  • Эти цифры показывают, что для эталонной компании сокращение отсутствующих значений на 10 процентных пунктов равносильно дополнительной прибыли в размере от 20 000 до 30 000 долларов США за кампанию.

Краткое содержание

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

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

Презентация вебинара

Ссылки

Ссылки на два вебинара по связанным анализам показаны в тексте выше. Мой веб-семинар Подготовка данных для науки о данных содержит дополнительные материалы по этой теме.

Средние статьи:

Статья сообщества SAS: Использование SAS Enterprise Miner для прогнозного моделирования

Презентация №102 в моей коллекции слайдов содержит больше наглядных материалов по этой теме.

В главах 16 и 18 моей книги SAS Press Качество данных для аналитики с использованием SAS эти темы обсуждаются более подробно.

Приложение: Вменение суррогатного дерева

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