Karışık etki modelinden tahmin edilen değerlerin bir zaman dilimleri üzerindeki toplamına göre farklılık


32

Bana bir zaman dilimi için öngörülerde bulunacak karışık bir etki modelim var (aslında genelleştirilmiş bir karma model var). Otokorelasyonu dengelemek için eksik verilerim olduğu için bir corCAR1 modeli kullanıyorum. Verilerin bana toplam bir yük vermesi gerekiyor, bu yüzden tüm tahmin aralığı boyunca toplamam gerekiyor. Ancak, toplam yük üzerindeki standart hatanın bir tahminini de almalıyım.

Tüm tahminler bağımsız olacaksa, bu kolayca çözülebilir:

Vbirr(Σben=1nE[Xben])=Σben=1nVbirr(E[Xben]) ileVbirr(E[Xben])=SE(E[Xben])2

Sorun şu ki, tahmin edilen değerler bir modelden geliyor ve orijinal veriler otomatik korelasyonlu. Bütün sorun şu sorulara yol açar:

  1. Hesaplanan tahminlerdeki ÖD'nin, bu tahminin beklenen değeri üzerindeki varyansın kökü olarak yorumlanabileceğini varsaymakta haklı mıyım? Tahminleri "ortalama tahminler" olarak yorumlamaya meyilliyim ve bu nedenle de bütün bir araç kümesini topladım.
  2. Otokorelasyonu bu probleme nasıl dahil edebilirim ya da sonuçları çok fazla etkilemeyeceğini güvenle söyleyebilir miyim?

Bu, R'ye bir örnektir. Gerçek veri setimde 34.000 ölçüm var, bu yüzden ölçeklendirilebilirlik bir problem. Otokorelasyonu her ay içinde modellememin nedeni budur, aksi halde hesaplamalar artık mümkün değildir. En doğru çözüm değil, ama en doğru çözüm mümkün değil.

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)

Düzenle :

Öğrenilecek ders: önce tüm yardım dosyalarındaki tüm örnekleri kaydırmadan önce gözden geçirin. Predict.gam yardım dosyalarında şunları bulabilirim:

#########################################################
## 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)

Bu benim yapmak istediklerime yakın gibi görünüyor. Bu hala bana tam olarak nasıl yapıldığını söylemiyor. Doğrusal prediktör matrisine dayandığı gerçeğine kadar gidebilirim. Herhangi bir görüş hala açıktır.


6
Im emin r programı yapıyor değil ne ama elimizdeki yerde birler ve bir sütun vektörüdür kovaryans olduğu için matris . Bu yardımcı olur mu?
vbirr(ΣbenE[Xben])=birTvbirr(E[X])bir
birvbirr(E[X])E[X]=(E[X1],...,E[Xn])T
probabilityislogic

@probabilityislogic Temel olarak r programının yaptığı şeydir. Matematik için Thx
Joris Meys

2
@probabilityislogic Bunu bir cevaba sığdırabilirseniz, +50 ödülümü alabilirsin. ;)
e-sushi

E(Xben)=μbenΣben=1nVbirr(E[Xben])=0

@ user52220 Burada hatalısınız. E (Xi) beklenen değerdir ve bu nedenle rastgele bir değişkendir, oysa mu_i popülasyonun ortalamasıdır ve dolayısıyla sabit bir sayıdır. Var (mu) = 0, ancak aynı E (Xi) için doğru değil.
Joris Meys

Yanıtlar:


1

Matris notasyonunda karma bir model şöyle gösterilebilir:

y = X * beta + Z * u + epsilon

X ve Z'nin sırasıyla sabit etkiler ve rastgele etkiler gözlemleriyle ilgili tasarım matrisleri olduğu yerlerde.

İlk gözlemin kaybedilmesini ve [y1, y2, ... yn] sütun vektörünün bir daha küçük ile değiştirilmesini içeren oto-korelasyonun düzeltilmesi için basit ve yeterli (ancak en iyi değil) bir dönüşüm uygulardım. gözlem sütun vektörü, yani: [y2 - rho * y1, y3 - rho * y2, ..., yn - rho * y (n-1)], burada rho, seri oto-korelasyon için tahmini değerinizdir.

Bu, T * y'yi oluşturan bir T matrisi ile çarpılarak gerçekleştirilebilir; burada T'nin 1. sırası aşağıdaki gibidir: [-rho, 1, 0, 0, ....], 2. sıra: [0, -rho, 1, 0, 0, ...], vs. Benzer şekilde, diğer tasarım matrisleri T * X ve T * Z olarak değiştirilir. Ayrıca, hata terimlerinin varyans-kovaryans matrisi, şimdi bağımsız hata terimleriyle de değiştirilmektedir.

Şimdi, çözümü yeni tasarım matrisleriyle hesaplayın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.