मेरे पास एक मिश्रित प्रभाव वाला मॉडल है (वास्तव में एक सामान्यीकृत मिश्रित मॉडल है) जो मुझे समय के लिए भविष्यवाणियां देता है। ऑटोकरेलेशन को काउंटर करने के लिए, मैं एक corCAR1 मॉडल का उपयोग करता हूं, इस तथ्य को देखते हुए कि मेरे पास लापता डेटा है। डेटा मुझे कुल भार देने वाला है, इसलिए मुझे पूरे पूर्वानुमान अंतराल पर योग करने की आवश्यकता है। लेकिन मुझे उस कुल भार पर मानक त्रुटि का भी अनुमान लगाना चाहिए।
यदि सभी पूर्वानुमान स्वतंत्र होंगे, तो इसे आसानी से हल किया जा सकता है:
के साथ वी एक आर ( ई [ एक्स मैं ] ) = एस ई ( ई [ एक्स मैं ] ) २
समस्या यह है कि, अनुमानित मान एक मॉडल से आ रहे हैं, और मूल डेटा में ऑटोक्रेलेशन है। संपूर्ण समस्या निम्न प्रश्नों की ओर ले जाती है:
- क्या मैं यह मानने में सही हूं कि गणना की गई भविष्यवाणियों पर एसई को उस भविष्यवाणी के अनुमानित मूल्य पर विचरण की जड़ के रूप में व्याख्या की जा सकती है? मैं भविष्यवाणियों की व्याख्या "मतलब भविष्यवाणियों" के रूप में करता हूं, और इसलिए साधनों का एक पूरा सेट प्राप्त करता हूं।
- मैं इस समस्या में स्वतःसंबंध को कैसे शामिल करूं, या क्या मैं सुरक्षित रूप से मान सकता हूं कि यह परिणामों को बहुत अधिक प्रभावित नहीं करेगा?
यह R में एक उदाहरण है। मेरे असली डेटासेट में लगभग 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)
संपादित करें:
सीखने के लिए सबक: पहले पैनकेक करने से पहले सभी मदद फ़ाइलों में सभी नमूनों से गुजरें। मैंने भविष्यवाणियों की मदद फाइलों में।
#########################################################
## 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)
जो मैं करना चाहता हूं उसके करीब लगता है। यह अभी भी मुझे नहीं बताता कि यह कैसे किया जाता है। मैं इस तथ्य के रूप में दूर हो सकता है कि यह रैखिक भविष्यवक्ता मैट्रिक्स पर आधारित है। किसी भी अंतर्दृष्टि का अभी भी स्वागत है।