GAM modeli için güven aralığı


14

Reading mgcv::gamyardım sayfası:

güven / güvenilir aralıklar, takılı bir model kullanılarak tahmin edilen herhangi bir miktar için kolayca kullanılabilir

Ancak bir tane elde etmenin bir yolunu bulamıyorum. Ben predict.gambir type=confidenceve bir levelparametre olacağını düşündüm ama değil. Nasıl yaratılacağı konusunda bana yardım edebilir misin?

Yanıtlar:


34

Her zamanki gibi:

p <- predict(mod, newdata, type = "link", se.fit = TRUE)

Ardından , içindeki gözlemler için tahminlerde standart hatalar piçeren bir bileşen içerdiğini unutmayın . Daha sonra SE'yi istediğiniz seviyeye uygun bir değerle çarparak CI oluşturabilirsiniz. Örneğin, yaklaşık% 95'lik bir güven aralığı şu şekilde oluşturulur:$se.fitnewdata

upr <- p$fit + (2 * p$se.fit)
lwr <- p$fit - (2 * p$se.fit)

İhtiyacınız olan aralık için veya Gauss dağılımından uygun bir değerde ikame edersiniz.t

type = "link"Bir GAM'ınız veya sadece bir AM'niz varsa söylemediğiniz gibi kullandığımı unutmayın . GAM'de, doğrusal tahmin edicinin ölçeğinde güven aralığını oluşturmanız ve ardından bağlantı işlevinin tersini uygulayarak bunu yanıt ölçeğine dönüştürmeniz gerekir:

upr <- mod$family$linkinv(upr)
lwr <- mod$family$linkinv(lwr)

Şimdi bunların çok yakın aralıklar olduğunu unutmayın. Buna ek olarak bu aralıklar nokta-bilge öngörülen değerlerin üzerinde olan ve onlar dikkate pürüzsüzlük seçimi yapıldı gerçeğini almazlar.

Eşzamanlı bir güven aralığı, parametrelerin posterior dağılımından simülasyon yoluyla hesaplanabilir. Blogumda bunun bir örneği var .

Düzgünleştirme parametrelerine (yani, bilmediğimiz, ancak pürüzsüzlük parametrelerinin değerlerini tahmin ettiğimiz dikkate alan) bir güven aralığı istiyorsanız unconditional = TRUE, predict()aramaya ekleyin .

Eğer bu notu kendiniz yapmak istemiyorsanız Ayrıca yeni sürümleri bu mgcv bir var plot.gam()döner tüm verilerle bir nesne yumuşatır ve bunların güven aralıklarının araziler oluşturmak için kullanılan bu işlevi. Çıktıyı yalnızca plot.gam()bir nesneden kaydedebilirsiniz

obj <- plot(model, ....)

ve sonra objher bir pürüzsüz için bir bileşen içeren bir liste olan inceleyin . Düzgünlük parametresine bağlı olmayan güven aralıkları almak seWithMean = TRUEiçin plot()çağrıyı ekleyin .


Eşzamanlı CI ve parametrik bootstrap yapmak kodla biraz daha fazla ilgilenir, böylece sadece nokta aralıklı aralıklarla harika bir şekilde geçebilirsiniz. Değilse, bunların her biri için daha fazla örnek verebilirim.
Monica'yı eski durumuna getirin - G. Simpson

Cevap için +1. Gerçekten etkileyici blog yazısı, grafik becerilerimi geliştirmek için bir süre çalışacağım.
jbowman

Bu etkileyici blog yayınına erişebilmemin bir yolu var mı ( ucfagls.wordpress.com/2011/06/12/… )? Şu anda blog bir giriş gerektiriyor.
geneorama

@geneorama Blogumu Wordpress'ten uzaklaştırdım ve bir yıl boyunca tüm URL'ler için yeni URL'ye yönlendirmeler için ödeme yaptım, ancak son zamanlarda bu gecikmeye izin verdim. Bunun için üzgünüm. Yeni bağlantıda düzenledim ve bu bir giriş gerektirmiyor. (Giriş aynı gönderinin iki kopyasından kaçınmaktır ve henüz Wordpress sitesinden sayfaları silmek için çok tembel oldum.)
Monica'yı eski

Orijinal blog yazısı (bu soru ve cevapların düzenleme geçmişine bakın) eşzamanlı aralığın oluşturulma biçiminde temel bir kusura sahipti. Yanıtın geçerli (Aralık 2016 itibarıyla) sürümündeki bağlantı, eşzamanlı aralığı doğru şekilde hesaplar.
Monica'yı eski durumuna getirin - G. Simpson

5

Eğer sadece bunları çizmek istiyorsanız, plot.gamfonksiyon gölgeleme argümanını kullanarak varsayılan olarak güven aralıkları olan gölgelendirmeye sahiptir. Ayrıca gam.vcomparalıkları görmek için bakınız .


5

Paket mgcv(gam'dan daha yeni) güvenilir aralıkları kolayca çizer. Bu Bayesci yaklaşım güven aralıklarından farklıdır, ancak sayısal simülasyonların gösterdiği gibi sonuçlar hemen hemen aynıdır ( mgcv ile bağlantılı Marra ve Wood'un makalesine bakınız).


2
+1 Marra & Wood'un makalesinin önemli bir sonucu, Nychka'nın ampirik Bayes'in güvenilir aralıklarının neden "işlevler arası" güven aralıkları olarak bakıldığında oldukça olağanüstü sık sık yorumlama / davranışa sahip olduklarını anlamalarını / açıklamalarını geliştirmeleridir . Aralıkları Bayesci veya sıklıkçı bir şekilde ele alabilirsiniz ve aralığının ima ettiği kapsama özelliği yaklaşık olarak bekletilir. 1α
Monica'yı eski durumuna getirin - G. Simpson
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.