Интерпретация декомпозиции временных рядов с использованием TBATS из пакета прогноза R

10

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

TotalCoolingForDecompose.ts <- ts(TotalCoolingForDecompose, start=c(2012,3,18), freq=8765.81)
plot(TotalCoolingForDecompose.ts)

Временные ряды энергии охлаждения

Таким образом, существуют очевидные ежедневные и еженедельные сезонные эффекты, основанные на рекомендациях: Как разложить временные ряды с несколькими сезонными компонентами? Я использовал tbatsфункцию из forecastпакета:

TotalCooling.tbats <- tbats(TotalCoolingForDecompose.ts, seasonal.periods=c(24,168), use.trend=TRUE, use.parallel=TRUE)
plot(TotalCooling.tbats)

Что приводит к:

введите описание изображения здесь

Что описывают levelи slopeкомпоненты этой модели? Как я могу получить компоненты trendи remainderкомпоненты, аналогичные статье, на которую ссылается этот пакет ( De Livera, Hyndman and Snyder (JASA, 2011) )?

cmiller8
источник
Я сталкивался с той же проблемой раньше. И я думаю, что здесь тенденция может означать l + b. (На бумаге есть модель) Или вы можете увидеть robjhyndman.com/hyndsight/forecasting-weekly-data
user49782
1
У меня такая же проблема. Возможно, я ошибаюсь, но чтобы найти остатки, вы можете использовать остаток (TotalCooling.tbats). Кривые также подтверждаются графиком (прогноз (TotalCooling.tbats, h = 1) $ остатков), тренд имеет «уклон».
Маркодена

Ответы:

5

В комментариях пользователей на этой странице кто-то спрашивает об интерпретации уровня и уклона, а также о том, как получить тренд и остатки, которые decompose()предоставляет функция. Гайндман отмечает , что не существует прямой перевод , как decompose()и tbats()использовать различные модели. Но если ваша модель TBATS не имеет преобразования Бокса-Кокса, то уровень TBATS примерно соответствует decompose()тренду. Если, с другой стороны, модель применяет преобразование Бокса-Кокса, вам нужно отменить преобразование, прежде чем интерпретировать уровень как (приблизительно) тренд. По крайней мере, так я интерпретирую его ответ.

Что касается остатков и склона, они не одинаковы.

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

Вы можете разбить тренд вниз на уровень и уклон. Уровень по сути является базовой линией тренда, а наклон - это изменение за единицу времени.

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

Нет простого ответа на вопрос о том, как уровень и наклон объединяются, чтобы привести к тренду. Это зависит от типа используемой вами модели. Как правило, аддитивные трендовые модели объединяют их аддитивным способом, а мультипликативные трендовые модели комбинируют их мультипликативным образом. Демпфированные варианты моделей сочетают уровень с демпфированным уклоном. В книге Хиндмана « Прогнозирование с экспоненциальным сглаживанием» (надеюсь, можно добавить ссылку на Amazon - я не имею никакого отношения к автору), приведены точные уравнения для каждой модели в таблице 2.1.


источник