Утечка данных
Утечка данных означает, что данные, используемые для обучения алгоритма машинного обучения, включают данные, которые модель пытается спрогнозировать. Это может привести к тому, что на этапе обучения модель будет работать лучше, чем в реальных условиях, что создает ложную уверенность в производительности работы модели. Узнайте, как выявить и предотвратить утечку данных, чтобы получать надежные прогнозы.
В общем и целом, утечка данных вызвана, по меньшей мере, одним из следующих событий:
-
Когда один или несколько признаков из набора данных для обучения используются для получения целевой переменной, которую модель пытается спрогнозировать. Например, целью является поле Sales, а одним из признаков является поле Sales Tax, вычисляемое на основе Sales.
-
Когда один или несколько признаков в наборе данных для обучения включают данные, которые не должны быть известны на момент прогнозирования.
В приведенной ниже таблице столбец Stage является дубликатом столбца Stage (Binary), который необходимо спрогнозировать. Включив столбец Stage в набор данных для обучения, будет выдан ответ на ожидаемый результат, что приведет к высокой оценке эффективности модели.
Total Employees | Annual Revenue (M$) | Lead Source | Forecast Deal ($) | Stage | Stage (Binary) |
---|---|---|---|---|---|
12078 | 2705 | Partner | 369,000 | 6 - Closed/Lost | LOST |
10076 | 1783 | Inside sales | 71,000 | 6 - Closed/Won | WON |
8518 | 2114 | Inside sales | 294,000 | 6 - Closed/Lost | LOST |
3978 | 1159 | Sales rep | 214,000 | 6 - Closed/Won | WON |
3517 | 2285 | Marketing promo | 154,000 | 6 - Closed/Lost | LOST |
3370 | 97 | Customer referral | 41,000 | 6 - Closed/Won | WON |
Целевая утечка
Утечка цели ― это форма утечки данных. Утечка цели возникает, когда данные признака ссылаются на данные цели, которые могут использоваться для прогнозирования. Ссылки, или «утечки», могут быть прямые или опосредованные.
При использовании интеллектуальной оптимизации модели AutoML идентифицирует утечку цели и предотвращает ее перенос в модели. Признаки, указывающие на утечку цели, автоматически выявляются и удаляются из обучения модели. Для получения дополнительной информации об интеллектуальной оптимизации модели см. раздел Интеллектуальная оптимизация модели.
Выявление утечки данных
Чтобы выявить утечку данных, задайтесь такими вопросами, как: «Будут ли эти же данные для записей доступны на момент прогнозирования?» или «Останется ли запись такой же через 30 дней?». Помните, что все данные в наборе данных для обучения должны находиться в пределах временного интервала, заданного в бизнес-задаче.
После обучения модели обратите внимание на следующие аспекты в метриках модели.
-
Высокая оценка. Является ли оценка действительно высокой? Например, значение F1 выше 85?
-
Важность признака. Является ли один признак гораздо более важным, чем все остальные?
-
Оценка на основе отложенных данных. Намного ли ниже оценка, полученная на основе отложенных данных, чем оценка, полученная в ходе перекрестной проверки?
В таблице приведены примеры распространенных признаков, из-за которых может произойти утечка данных.
Бизнес-сценарий использования | Цель |
Признаки с возможной утечкой данных |
---|---|---|
Будет ли закрыта сделка? |
Закрытие сделки («Да» или «Нет») |
Этап, дата закрытия, сведения о счете, выплаченные комиссионные |
Прогнозирование суммы будущей сделки |
Сумма будущей сделки |
Налоги, сведения о сделке |
Будет ли лид сконвертирован в сделку? |
Конвертация («Да» или «Нет») |
Сведения о сделке, дата конвертации |
Уйдет ли клиент? |
Отток («Да» или «Нет») |
Причина ухода, дата ухода, срок постоянного пребывания клиента в компании, состояние клиента |
Уволится ли сотрудник по собственному желанию? |
Увольнение («Да» или «Нет») |
Сведения о собеседовании при увольнении, дата увольнения, сведения о заявлении на увольнение |
Предотвращение утечки данных
Лучший способ предотвратить утечку данных — использовать упорядоченную структуру, чтобы правильно сформулировать бизнес-задачу и получить хороший набор данных. Для получения дополнительной информации см. раздел Формулирование задач машинного обучения.