Варіантність суми передбачуваних значень із моделі змішаного ефекту на часових серіях


32

У мене є змішана модель ефекту (насправді узагальнена добавна змішана модель), яка дає мені прогнози на час. Для протидії автокореляції я використовую модель corCAR1, враховуючи той факт, що у мене відсутні дані. Дані, як передбачається, дають мені загальне навантаження, тому мені потрібно підсумовувати весь інтервал прогнозування. Але я також повинен отримати оцінку стандартної помилки для цього загального навантаження.

Якщо всі прогнози будуть незалежними, це можна легко вирішити:

Var(i=1nE[Xi])=i=1nVar(E[Xi]) ізVar(E[Xi])=SE(E[Xi])2

Проблема полягає в тому, що передбачувані значення надходять із моделі, а вихідні дані мають автокореляцію. Вся проблема призводить до наступних питань:

  1. Чи правильно я припускаю, що SE для обчислених прогнозів можна інтерпретувати як корінь дисперсії від очікуваного значення цього прогнозу? Я схильний тлумачити прогнози як "середні прогнози", а значить, підсумовую цілий набір засобів.
  2. Як я включаю автокореляцію в цю проблему чи можу з впевненістю припустити, що це не вплине на результати занадто сильно?

Це приклад у Р. Мій реальний набір даних нараховує близько 34 000 вимірювань, тому масштабованість є проблемою. Ось чому я моделюю автокореляцію протягом кожного місяця, інакше розрахунки вже неможливі. Це не найбільш правильне рішення, але найбільш правильне рішення неможливо.

set.seed(12)
require(mgcv)

Data <- data.frame(
    dates = seq(as.Date("2011-1-1"),as.Date("2011-12-31"),by="day")
)

Data <- within(Data,{
X <- abs(rnorm(nrow(Data),3))
Y <- 2*X + X^2 + scale(Data$dates)^2
month <- as.POSIXlt(dates)$mon+1
mday <- as.POSIXlt(dates)$mday
})

model <- gamm(Y~s(X)+s(as.numeric(dates)),correlation=corCAR1(form=~mday|month),data=Data)

preds <- predict(model$gam,se=T)

Total <- sum(preds$fit)

Редагувати:

Урок для вивчення: спочатку пройдіть усі зразки у всіх довідкових файлах, перш ніж панікувати. У файлах довідки predict.gam я можу знайти:

#########################################################
## now get variance of sum of predictions using lpmatrix
#########################################################

Xp <- predict(b,newd,type="lpmatrix") 

## Xp %*% coef(b) yields vector of predictions

a <- rep(1,31)
Xs <- t(a) %*% Xp ## Xs %*% coef(b) gives sum of predictions
var.sum <- Xs %*% b$Vp %*% t(Xs)

Яка, здається, близька до того, що я хочу зробити. Це все ще не каже мені точно, як це робиться. Я міг би дійти до того факту, що він заснований на лінійній матриці предиктора. Будь-які уявлення все ще вітаються.


6
Я не впевнений, що робить програма r, але у нас Де - вектор стовпців, а - коваріація матриця для . Чи допомагає це?
var(iE[Xi])=aTvar(E[X])a
avar(E[X])E[X]=(E[X1],,E[Xn])T
ймовірністьлогічний

@probabilityislogic Це в основному те, що робить програма r. Thx для математики
Joris Meys

2
@probabilityislogic Якщо ви зможете це зрозуміти у відповідь, ви можете взяти мою суму +50 щедрості. ;)
e-sushi

Я бачу одну проблему, і, можливо, я просто неправильно трактую ваші позначення, але яка є постійною, тому , де я збентежив здебільшогоE(Xi)=μii=1nVar(E[Xi])=0
user52220

@ user52220 Тут ви помиляєтесь. E (Xi) - очікуване значення і, отже, випадкова величина, тоді як mu_i - це середнє значення сукупності, а отже, і фіксоване число. Var (mu) = 0, але те ж не є правильним для E (Xi).
Йоріс Майс

Відповіді:


1

У матричних позначеннях змішана модель може бути представлена ​​як

y = X * beta + Z * u + epsilon

де X і Z - відомі проектні матриці, що стосуються спостережень за фіксованими ефектами та випадковими ефектами відповідно.

Я застосував би просте і адекватне (але не найкраще) перетворення для виправлення автокореляції, яке передбачає втрату першого спостереження, і заміну вектора стовпців [y1, y2, ... yn] на менший на одиничний Вектор стовпчика спостереження, а саме: [y2 - rho * y1, y3 - rho * y2, ..., yn - rho * y (n-1)], де rho - ваше оцінене значення для послідовного автокореляції.

Це можна виконати, помноживши на матрицю T, утворюючи T * y, де 1-й рядок T складається так: [-rho, 1, 0, 0, ....], 2-й рядок: [0, -rho, 1, 0, 0, ...] тощо. Аналогічно, інші матриці проектування змінюються на T * X і T * Z. Також змінена матриця дисперсії-коваріації термінів помилки, тепер це також є незалежними умовами помилки.

Тепер просто обчисліть рішення за допомогою нових матриць дизайну.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.