Bayes glm'deki -değerlerini anlamama yardım et


13

Burada veriler üzerinde bir Bayesian logit çalıştırmak çalışıyorum . R paketinde kullanıyorum bayesglm(). armKodlama yeterince basit:

df = read.csv("http://dl.dropbox.com/u/1791181/bayesglm.csv", header=T)
library(arm)
model = bayesglm(PASS ~ SEX + HIGH, family=binomial(link="logit"), data=df)

summary(model) aşağıdaki çıktıyı verir:

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  0.10381    0.10240   1.014    0.311    
SEXMale      0.02408    0.09363   0.257    0.797    
HIGH        -0.27503    0.03562  -7.721 1.15e-14 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 2658.2  on 1999  degrees of freedom
Residual deviance: 2594.3  on 2000  degrees of freedom
AIC: 2600.3

Lütfen beni bunun üzerinden geçir. Bu kod çok zayıf (daha önce önceki araçları belirtmek değil çünkü) kullandığından, bu yüzden glm()yerine yerine çıktı hemen hemen aynı olacağını anlıyorum bayesglm(). Ama çıktı hala Bayes ruhunda olmalı, değil mi? Nelerdir -değerleri ve burada -değerleri? Bunlar sıkça çıkarım yapan araçlar değil mi? Burada farklı yorumlanıyorlar mı?zpz


Bu bir yorum ve cevap değil, ama bu bana mantıklı geliyor. Muhtemelen posterior dağılımın maksimize edildiği değerler olan tahminler alırsınız. Sadece posteriorun araçları olmaları da mümkün olabilir mi? Eğer kontrol değer. Ancak kesin ayrıntılar ne olursa olsun, bazı tahminleriniz olduğunda bunları normal Tahmin / Standart ile test edebilirsiniz. Hata -> posterior normale yeterince yakınsa çalışan z-skoru prosedürü (genellikle bazı koşullar altında normale döner).
Erik

Erik ... Haklısın: katsayılar aslında arka yoğunlukların aracı. Sorum p- ve z-değerleri ile ilgili. Burada neyi temsil ediyorlar?
user3671

Tamam. Yaklaşık olarak normal dağılım gösteren bir yoğunluğa sahipseniz, dağılımın z-skoru = ortalama / standart sapmasını alıp standart normal dağılımla karşılaştırarak ortalamasının sıfır olup olmadığını test edebilirsiniz. Ardından, değerinizin veya daha büyük bir değerin standart normal dağılım -> p değeri altında ne kadar düşük olacağına bakın. Ayrıntılar için Wikipedia'da z skoruna bakın.
Erik

İyi evet. Ama bunu neden Bayesli bir ortamda yapmak zahmetine girsin ki? Bayesci çıkarımda, nokta tahmini rastgele parametre hakkında en iyi tahminimdir, bu yüzden test etmeye gerek yoktur. En sık olarak, sık sık bir “güven aralığına” eşdeğer olan ancak istatistiksel yorumu çok farklı olan bir “güvenilir aralık” ekleyebilirim. Bu özet () çıktısı hakkında kafa karıştırıcı kısım. Ruh Bayesci, ama çıktı frekansçı mı?
user3671

Bir nokta, bir öncekini kullandığınız için aldığınız tahminin farklı olacağıdır. Ve nokta tahmini "en iyi tahmin" olsa da, Bayes yolunda bir şeyin bir etkisi olduğunu göstermek istiyorsanız, güvenilir aralığın sıfır içermediğini göstermeye çalışırsınız. Posterioru aynı ortalamaya ve sd'ye (asimptotik olarak doğru) sahip bir normale yaklaştırdığınızda, (1-p / 2) güvenilirlik aralığı sıfır içeren en büyük simetrik güvenilirlik aralığıdır, bu nedenle cevabınız temelde aynıdır. P, yukarıda belirtilen p değeridir.
Erik

Yanıtlar:


16

Harika bir soru! Bulunmasına rağmen Bayes p değerleri ve kol paketinin yazarlardan birinin bir savunucusudur ne çıktınıza görüyoruz olduğu değil bir Bayes p değeri. Sınıfını kontrol edinmodel

class(model)
"bayesglm" "glm"      "lm" 

ve sınıf bayesglm'nin glm'den miras aldığını görebilirsiniz. Ayrıca, kol paketinin incelenmesi, bir bayesglm nesnesi için özel bir özet yöntemi göstermemektedir. Yani ne zaman yaparsan

summary(model)

aslında yapıyorsun

summary.glm(model)

ve sonuçların sıkça yorumlanması. Daha Bayesci bir bakış açısı istiyorsanız, koldaki fonksiyondisplay()


+1 Mükemmel cevap! Bu R'nin sorunu, bu tür kara mayınlarını etrafta bırakan korkunç kod yazan çok fazla akıllı istatistikçi var.
Bogdanovist

Bir gözetimden ziyade tasarımcılar kısmında kasıtlı bir seçim gibi görünüyor .
atiretoo - reinstate monica

Bağlantıyı okuduktan sonra niyete katılıyorum, ancak bu durumda özet (), uyarı yapmadan saçma sonuçlar vermek yerine display () işlevini çağırmak için yeniden uygulanmalıdır. Bu soruyu soran kişi, şimdiye kadar kullandıkları diğer tüm nesneler tarafından oluşturulan R için kullanıcı modelini bozan bir kodla açıldı. Bu korkunç bir programlama uygulaması.
Bogdanovist

2
Çok teşekkürler, atetoo. Bu başka bir soruyu gündeme getiriyor. Display () ve özet () arasındaki fark nedir? Bana öyle geliyor ki, öncekinden çıktı sadece ikincisinden çıktı, daha az iki sütun ve 2 basamağa yuvarlanmış. Öyle görünüyor ki, yukarıda bağladığınız Gelman'ın gönderisinden.
user3671

Evet ve Andrew Gelman'ın blogundaki tartışmadan, bunu kol paketinin gelecekteki sürümlerinde düzelecek gibi görünüyor.
atiretoo - reinstate monica
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.