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