Создание моделей с учетом времени
Обучение с учетом времени позволяет создавать модели, способные прогнозировать данные по столбцу на основе времени, существующему в данных для обучения. Активируйте обучение с учетом времени, если требуется создавать прогнозы по цели, на которую, как известно, оказывает влияние данный столбец на основе времени.
Обучение с учетом времени помогает уменьшить утечку данных за счет применения специальной обработки данных для обучения. Такая обработка позволяет алгоритмам машинного обучения лучше интерпретировать данные и прогностический контекст как зависящие от конкретной даты или времени.
Чтобы обучать модели с учетом времени, в наборе данных для обучения должен быть столбец, содержащий данные о дате или метке времени. Этот столбец представляет собой индекс даты, который используется для сортировки набора данных перед обучением. Для получения дополнительной информации об индексе даты см. раздел Требования к индексу даты.
Когда это следует использовать
Обучение модели с учетом времени идеально подходит для моделей, которые прогнозируют изменения по метрике времени, уже присутствующей в обучении. Пример:
-
Требуется спрогнозировать продажи на следующий месяц, и в наборе данных есть столбец Дата транзакции.
-
Требуется спрогнозировать метрики по доставке грузов с опозданием, и в наборе данных есть столбец Дата доставки.
Замечания
В зависимости от сценария использования, обучение модели с учетом времени поможет помочь создать более эффективные модели. В других случаях лучших результатов позволит добиться процесс обучения по умолчанию, предоставляемый AutoML. Как правило, если данные в значительной степени зависят от конкретного столбца на основе времени, рекомендуется использовать обучение модели с учетом времени.
В Qlik AutoML в процессе обучения с учетом времени не применяется автоматическое создание признаков с целью создания запаздывающих признаков для задач временных рядов. Для сценариев использования на основе времени, которые требуют создания признаков, рекомендуется выполнять все необходимые операции по созданию признаков на этапе подготовки набора данных.
Как работает обучение с учетом времени
Распространенная проблема машинного обучения ― поиск способа сделать так, чтобы модели обучались только на той информации, которая будет доступна на момент обучения. Если данные для обучения содержат значимые данные о дате и времени, эта информация может быть использована для предотвращения утечки данных.
Требования к индексу даты
Чтобы активировать обучение с учетом времени, в наборе данных должен быть столбец, содержащий информацию о дате и времени, от которой зависит обучение модели. Столбец выбирается при настройке оптимизации модели для обучения.
Чтобы использовать столбец в качестве индекса даты в обучении, он должен иметь все перечисленные ниже характеристики:
-
Полные даты. Например, нельзя использовать столбцы, состоящие из значений месяца или дня.
-
Тип данных даты или метки времени.
-
Тип признака даты.
Отложенные данные и перекрестная проверка
При выборе способа отделения отложенных данных для перекрестной проверки методы случайного выбора могут включить данные будущих периодов в обучение модели. Когда активируется обучение с учетом времени, AutoML вместо этого использует следующий процесс:
-
Набор данных для обучения сортируется по выбранному столбцу индекса, после чего он разделяется на данные для обучения и отложенные данные.
-
На каждой итерации обучения используется фиксированный размер данных для проверки и постепенно увеличивающийся объем данных обучения. При каждой итерации данные становятся все более свежими.
Для получения полных сведений см. раздел Перекрестная проверка на основе времени.
Другие процессы
При обучении модели с учетом времени также используются другие процессы, отличные от процессов обучения по умолчанию. Например, при обучении с учетом времени используется модифицированный процесс для подстановки нулевых значений. Для получения дополнительной информации см. раздел Подстановка значений NULL.
Включение обучения с учетом времени
Обучение модели с учетом времени можно включить или выключить, а также перенастроить для каждой версии, запускаемой в эксперименте.
Выполните следующие действия.
-
В эксперименте щелкните Посмотреть конфигурацию.
-
Если уже выполнена хотя бы одна версия эксперимента, нажмите Новая версия.
-
На панели разверните пункт Оптимизация модели.
-
В разделе Разделение данных на тестирование и обучение на основе времени выберите Индекс даты, который будет использоваться для сортировки данных.
Можно изменить обучение с учетом времени во время доработки модели. Например, можно отключить параметр или выбрать новый столбец в качестве индекса даты. Для получения дополнительной информации см. раздел Уточнение моделей.