Вопрос или проблема
Предыстория:
В настоящее время я работаю над проблемой прогнозирования нагрузки с использованием библиотеки Darts, и я обучил модель LightGBM на данных с частотой “1H” (почасовая). Модель проверяется на данных с 1 по 31 декабря. Я наблюдал значительное завышение в прогнозах модели, особенно 22 и 23 декабря, причем более выраженное завышение 23 декабря. Я ищу советы о наиболее эффективных и надежных методах диагностики причины этого завышения и о том, могут ли новые преобразования признаков помочь в решении этой проблемы. Мои текущие ковариаты включают скользящее среднее, циклические кодировки часов и месяцев, определение недели Рождества, температуру и некоторые другие.
- Анализ шаблонов: я проверил учебные данные и обнаружил, что аналогичный шаблон завышения существует в тот же период в учебном наборе.
- Инжиниринг признаков: я ввел категориальный признак, чтобы специально отметить, является ли дата 22 декабря или 23 декабря, но это не сильно снизило завышение.
Вопросы:
- Диагностические подходы: какие наиболее эффективные и надежные методы для выяснения причины завышения в модели LightGBM? Существуют ли конкретные диагностические инструменты или техники, которые могут помочь выявить коренную причину такого завышения?
- Преобразование признаков: учитывая наблюдаемое завышение, существуют ли какие-либо преобразования признаков или инженерные методы, которые могли бы потенциально снизить завышение? Например, будет ли полезным включение лаговых признаков, сезонных индикаторов или взаимодействий?
- Калибровка модели: существуют ли какие-либо методы калибровки для моделей LightGBM, которые могли бы помочь скорректировать прогнозы, чтобы уменьшить завышение, особенно в критические периоды?
Буду признателен за любые предложения 🙂
Ответ или решение
Диагностика и устранение чрезмерной переоценки в модели LightGBM для прогноза нагрузки с использованием библиотеки Darts представляет собой комплексную задачу, требующую всестороннего подхода. В данной ситуации, когда наблюдается значительная переоценка особенно в конкретные даты, необходимо тщательно проанализировать различные аспекты модели и данных. Рассмотрим детально возможные подходы для решения этой проблемы, используя метод TEA (Теория, Пример, Применение).
Теория
Диагностические подходы:
- Анализ резидуалов: Оцените остаточные ошибки модели, чтобы выявить систематические отклонения. Это позволит понять, есть ли закономерности в периодах, когда наблюдается переоценка.
- Визуализация прогнозов и фактических данных: Используйте графики прогнозируемых и фактических значений, чтобы визуально определить периоды и условия, при которых модель переоценивает.
- Анализ важности признаков: Определите, какие признаки наиболее сильно влияют на прогнозы модели, используя встроенные функции важности признаков LightGBM. Это поможет выявить, не вызывает ли определённый признак переоценку.
- Анализ исторических данных: Поскольку вы отметили повторение паттернов в обучающем наборе данных, настройте более глубокий анализ этих данных, чтобы выявить возможное влияние сезонности или аномальных значений на прогнозы.
Преобразование признаков:
- Сезонные индикаторы: Включите дополнительные сезонные индикаторы, которые могут лучше захватить особенности данных декабря.
- Лаговые признаки: Использование временных лагов может помочь подчеркнуть повторяющиеся временные паттерны.
- Взаимодействие признаков: Исследуйте возможность добавления взаимодействий между различными признаками, особенно между теми, которые имеют высокий вес в модели.
Калибровка модели:
- Изменение гиперпараметров: Подстройка гиперпараметров, таких как число деревьев или глубина, может помочь улучшить точность модели.
- Послепрогнозная калибровка: Рассмотрите использование методов адаптации прогнозов после их получения, таких как регрессия ошибок.
Пример
Рассмотрим более детально анализ резидуалов в конкретном контексте. Допустим, на 22 и 23 декабря определён цельный паттерн переоценки. Один из подходов заключается в вычислении среднеквадратической ошибки (MSE) для каждого часа, чтобы определить наличие специфичных временных паттернов, указывающих на неравномерную производительность модели. Если выяснится, что модель испытывает сложности только в определённые дни, вероятно, недостаточно учтены сезонные изменения.
Применение
Для диагностики: Постройте временные ряды ошибок на основе проверочного набора данных. Это поможет оценить стабильность прогноза в разные периоды. Используйте библиотеку Darts для визуализации, которая предоставляет инструменты для анализа временных рядов и просмотра прогнозов в контексте временных интервалов.
Для преобразования признаков: Настройте дополнительные индикаторы выходных и праздничных дней, особенно для важных дат, которые могут оказывать влияние на данные декабря. Используйте лаги полудесятилетней длины для выявления скрытых паттернов в данных.
Для калибровки модели: Рассмотрите использование техники LOOCV (Leave-One-Out Cross-Validation) в периодах со значительной переоценкой, чтобы проверить, влияет ли удаление одной из точек данных на повышение точности модели.
Подводя итоги, справление с переоценкой модели LightGBM в прогнозировании нагрузки требует тщательного анализа и применения комплексного подхода, включающего углубленный анализ ошибок, продвинутые методы инженерии признаков и корректировку модели через калибровку. Важно проводить итерационный процесс, начиная с диагностики и заканчивая улучшениями прогноза, учитывая специфику вашего набора данных и условия бизнеса.