Kovaryans yapısının belirlenmesi: artıları ve eksileri


15

Bir GLM'de bir kovaryans yapısının belirtilmesinin faydaları nelerdir (kovaryans matrisindeki diyagonal olmayan tüm girişleri sıfır olarak değerlendirmek yerine)? Verilerin bildiklerini yansıtmanın yanı sıra,

  1. uyum iyiliği artırmak?
  2. Bekletilen verilerde öngörme doğruluğu artırılsın mı?
  3. kovaryansın boyutunu tahmin etmemize izin verir mi?

Kovaryans yapısının uygulanmasının maliyeti nedir? Yapar

  1. algoritmaları için hesaplama komplikasyonları eklemek?
  2. tahmin edilen parametrelerin sayısını artırmak, ayrıca AIC, BIC, DIC artırmak?

Doğru kovaryans yapısını ampirik olarak belirlemek mümkün mü, yoksa bu veri üreten süreç hakkındaki bilginize bağlı mı?

Bahsetmediğim herhangi bir maliyet / fayda var mı?


5
Temel olarak, gereken GLM bir kovaryans yapısını belirler. "Kovaryans olmadığını varsayarak", "kovaryans matrisindeki tüm diyagonal olmayan girdiler sıfırdır" demek istiyorsanız, yaptığınız tek şey çok özel bir kovaryans yapısı olduğunu varsaymaktı. (Daha da spesifik olabilirsiniz, örneğin, tüm varyansların eşit olduğunu varsayarak.) Alt satır: Sorunun mevcut biçiminde anlamlı olup olmadığından emin değilim. (Yine de iptal ettim, çünkü sanırım guru konuşmaya başladığında çok şey öğreneceğim.) Yoksa seni yanlış mı anlıyorum?
Stephan Kolassa

Bir çok değişkenli normal karıştırma dağılımına sahip bir GLM'deki kovaryans yapısından mı, yoksa bir kovaryans matrisinin kovaryans yapı analizinden mi yoksa başka bir şeyden mi bahsediyorsunuz?
Tim

1
@StephanKolassa yorumunuzu bir cevaba kopyalamak ister misiniz? Soruyu alacağı kadar iyi cevaplıyor gibi görünüyor.
Corone

@Corone: iyi bir nokta, hatırlatma için teşekkürler. Gittim ve bir cevap gönderdim. Belki de başka biri girip daha iyi bir tane verecektir ...
Stephan Kolassa

Yanıtlar:


13

Temel olarak, gereken GLM bir kovaryans yapısını belirler. "Kovaryans olmadığını varsayarak", "kovaryans matrisindeki tüm diyagonal olmayan girdiler sıfırdır" demek istiyorsanız, yaptığınız tek şey çok özel bir kovaryans yapısı olduğunu varsaymaktı. (Örneğin, tüm varyansların eşit olduğunu varsayarak daha da spesifik olabilirsiniz.)

Bu gerçekten "Hiçbir felsefeye abone değilim; ben bir pragmatistim." - "Az önce abone olduğunuz felsefeyi anlattınız."

Bu nedenle, kovaryans yapısı hakkında düşünmenin avantajının, verilerinize daha uygun bir model kullanma şansı olduğunu söyleyebilirim. Nasıl gözlemlerinizin beklenen değeri (veya ortalaması) için bilinen işlevsel ilişkileri dahil etmeniz gerektiği gibi, kovaryansta bildiğiniz herhangi bir yapıyı da hesaba katmalısınız.

Ve elbette, "dezavantaj" aslında tüm bunları düşünmeniz gerektiğidir. Yazılımınızın varsayılan ayarını kullanmak çok daha kolay. Ama bu her zaman ilk viteste sürmek gibi bir şey çünkü arabanızı satın aldığınızda ilk viteste idi ve vites değişimini anlamak çok çaba gerektiriyor. Tavsiye edilmez.


2
+1 Yazdığınız her kelimeye katılıyorum, ancak bunun soruyu tam olarak ele aldığını düşünmüyorum. Örneğin, daha uygun bir kovaryans yapısının belirtilmesi model artıklarını azaltır mı?
Jack Tanner

1
@JackTanner: teşekkürler! Ve sorunuzu tam olarak cevaplamadığım için haklısınız, bu yüzden bunu sadece bir yorum olarak gönderdim. Gerçeği söylemek gerekirse: örneğin, doğru kovaryans yapısını belirtmenin kalıntıları mutlaka azaltıp azaltmayacağını bilmiyorum. Kalıntılara (kovaryans) ek yapının onu bile artırabileceğini hayal ediyorum - ama parametrelerden tasarruf edebilir. Yapılandırılmamış bir kovaryans matrisi yerine bir AR (1) yapısı düşünün. Gönderinizdeki diğer sorular için de benzer. Kesinlikle başkalarının bu konudaki görüşleri ile ilgilenirim.
Stephan Kolassa

1
+ 1; Yararlı bir cevap, dahası, benzetme harika.
russellpierce

2

İşte doğrudan GLM ile ilgili olmayan başka bir eksik cevap ... Yapısal eşitlik modellemesi (SEM) ile ilgili çok sınırlı deneyimimde, tartışmaya bir şeyler katabileceğini umduğum birkaç fikir aldım. Ben GLM SEM ile (sınırlı) deneyimlerinden konuşuyorum o boyunca unutmayınız başına ve bu ayrım önemli hale gelebilir olmadığını ve nerede oldukça cahilim. Ben bir istatistikçiden daha fazla istatistik kullanıcısıyım, bu yüzden bu fikirlerin tüm veriler için veya hatta çoğu veri için geçerli olacağından emin değilim; Sadece kendimin çoğuna başvurduklarını gördüm.

İlk olarak, zaten bildiklerinizi modellemenin önemine @ StephanKolassa'nın önemini yansıtacağım. Bunu bir kenara kabul ediyorsunuz, ama bence sorduğunuz faydalar bildiklerinizi modellemenin faydaları. Bu nedenle, ortaya çıkan modelinizin eklediğiniz kovaryans yapısı hakkında bilgi sahibi olduğunu anlamlı bir şekilde yansıtırlar.

SEM'de buldum (teorik çalışma yoluyla değil, sınırlı deneyim yoluyla):

Yararları

  1. Kovaryans yapısının modellenmesi, kovaryans standart hatasından (yani simetrik yol önemliyse) daha güçlü ise uyum iyiliğini (GoF) artırır. Bu, genellikle sıfıra yakın korelasyonları modelleyerek GoF'yi geliştirmeyeceğiniz anlamına gelir ve çoklu bağlantı, standart hataları şişirdiği için GoF için sorunlara neden olabilir.

  2. Henüz tahmin etmek için veri tutmayı denemedim, ancak sezgim, modelinizde kovaryansları sıfıra sabitlemenin, bir dizi ayrı, tek IV, doğrusal regresyon denklemini birleştirerek bir DV'yi tahmin etmeye benzer olmasıdır. Bu yaklaşımın aksine, çoklu regresyon, DV'yi tahmin etmek için bir denklemler modeli üretirken IV'lerde kovaryansı açıklar. Bu, doğrudan efektleri, dahil edilen IV seti içinde meydana gelen dolaylı etkilerden ayırarak kesinlikle yorumlanabilirliği geliştirir. Dürüst olmak gerekirse, bunun DV tahminini mutlaka artırıp iyileştirmediğinden emin değilim. Bir istatistik kullanıcısı değil, istatistik kullanıcısı olarak, bu simülasyona benzer durumda eksik bir cevap vermek için (görünüşte, "Evet, model IV kovaryans içerdiğinde tahmin doğruluğu artar") aşağıdaki simülasyon testi işlevini bir araya getirdim ...

    simtestit=function(Sample.Size=100,Iterations=1000,IV.r=.3,DV.x.r=.4,DV.z.r=.4) {
    require(psych); output=matrix(NA,nrow=Iterations,ncol=6); for(i in 1:Iterations) {
    x=rnorm(Sample.Size); z=rnorm(Sample.Size)+x*IV.r
    y=rnorm(Sample.Size)+x*DV.x.r+z*DV.z.r
    y.predicted=x*lm(y~x+z)$coefficients[2]+z*lm(y~x+z)$coefficients[3]
    bizarro.y.predicted=x*lm(y~x)$coefficients[2]+z*lm(y~z)$coefficients[2]
    output[i,]=c(cor(y.predicted,y)^2,cor(bizarro.y.predicted,y)^2,
    cor(y.predicted,y)^2>cor(bizarro.y.predicted,y)^2,cor(x,z),cor(x,y),cor(y,z))}
    list(output=output,percent.of.predictions.improved=100*sum(output[,3])/Iterations,
    mean.improvement=fisherz2r(mean(fisherz(output[,1])-fisherz(output[,2]))))}
    
    # Wrapping the function in str( ) gives you the gist without filling your whole screen
    str(simtestit())
    

    N-= IterationsnSample.Sizez = x +y = x + z +yxz

    1y.predicted

    2bizarro.y.predicted

    outputIterationsR2121>2rxyzoutputsimtestit()str( )R21rpsych

    R,2R,2IV.r) daha büyüktür. Muhtemelen GLM işlevinize benden daha aşina olduğunuzdan (ki bu hiç de değil), muhtemelen bu işlevi değiştirebilir veya çok fazla sorun olmadan istediğiniz IV'lerde GLM tahminlerini karşılaştırmak için temel fikri kullanabilirsiniz. Bunun aynı şekilde ortaya çıkacağı (veya çıktığı) varsayarsak, ikinci sorunuzun temel cevabı muhtemelen evet, ancak IV'lerin ne kadar güçlü bir şekilde değiştiğine bağlı gibi görünüyor. Bekletilen veriler ile modele sığdırmak için kullanılan veriler arasındaki örnekleme hatası farkları, ikinci veri kümesindeki öngörme doğruluğundaki iyileşmeyi ezebilir, çünkü yine IV korelasyonları güçlü olmadıkça (en azından, sadece iki IV ile maksimum temel vaka).

  3. Modeldeki IV'ler arasında kovaryans için serbest bir yol belirtilmesi, model yerleştirme işlevinin, IV'ler arasındaki kovaryans derecesini temsil eden bu yolun katsayısını tahmin etmesini istemek anlamına gelir. GLM işleviniz, IV'ler arasındaki kovaryansın sıfıra sabitlenmek yerine serbestçe tahmin edildiği bir model belirlemenize izin veriyorsa, sorununuz bunu nasıl yapacağınızı ve işlevinizi nasıl çıktıya getireceğinizi ummak için basit bir meseledir. bu tahmin. İşleviniz varsayılan olarak IV kovaryanslarını tahmin ederse, sorununuz yalnızca ikinci maddeye göre daha basitleşir (olduğu gibi lm( )).

Maliyetler

  1. Evet, IV'ler arasındaki kovaryansı serbestçe tahmin etmek, model uydurma algoritmasının, yolun katsayısını tahmin etmek için bazı çalışmalar yapmak zorunda olduğu anlamına gelir. Modeldeki yolun belirtilmemesi genellikle katsayıyı sıfıra sabitlemek anlamına gelir, yani model uydurma algoritmasının katsayıyı tahmin etmesi gerekmez. Ek kovaryans parametrelerini tahmin etmek, genel modelin sığması için daha fazla zaman gerektireceği anlamına gelir. Zaten tahmin edilmesi uzun süren modellerde, özellikle IV'leriniz varsa, ekstra zaman önemli olabilir.

  2. Evet, serbestçe tahmin edilen bir kovaryans yapısı parametre tahminlerini ifade eder. Popülasyonların kovaryans parametreleri vardır, bu nedenle popülasyon kovaryanslarını tahmin ediyorsanız, parametreleri tahmin edersiniz. Bununla birlikte, modeliniz çok daha iyi uyuyorsa, sıfıra sabitlemek yerine önemsiz olmayan bir korelasyon tahmin etmeyi seçerseniz, muhtemelen GoF'yi içeren diğer kriterler gibi Akaike ve Bayesian bilgi kriterlerinin de iyileşmesini bekleyebilirsiniz. Sapkınlık bilgisi ölçütüne aşina değilim ( atıfta bulunduğunuz DIC , değil mi?), Ancak Wikipedia sayfasından bakarsak, GoF ve model karmaşıklığı için bir ceza da dahil gibi görünüyor.

    Bu nedenle GoF'nin DIC'yi geliştirmek için modelin karmaşıklığının artmasından orantılı olarak daha fazla iyileştirmesi gerekir. Bu genel olarak gerçekleşmezse, daha fazla IV kovaryansını tahmin ettiğinizde, model karmaşıklığını cezalandıran kriterler kötüleşecektir. Örneğin, IV'leriniz birbiriyle ilişkili değilse, ancak IV'lerin birbiriyle ilişkili olabileceğini düşündüğünüz için veya işlevinizin varsayılan ayarı olduğu için kovaryans yapısı her durumda serbestçe tahmin edilirse bu bir sorun olabilir. Bir korelasyonun sıfır olduğunu varsaymak için önceden teorik nedenleriniz varsa ve modelinizin bu varsayımı test etmesini istemiyorsanız, bu, sıfıra giden yolu sabitlemede haklı olabileceğiniz bir durumdur. Önceki teoriniz yaklaşık olarak doğruysa,

Hangi işlevle çalıştığınızı bilmiyorsanız, ama bir kez daha, bilmiyorum, bu yüzden bilmiyorum, bu yüzden bu cevabın geliştirilebileceğinden eminim, özellikle ikinci fayda sorusuna cevabım (bir kere, matematiksel çoklu regresyon hakkında simülasyon ile cevapladığımın kanıtı muhtemelen orada bir yerde mevcut). Genel olarak GLM'ye bile aşina değilim ( etiketin önerdiği gibi genelleştirilmiş , genel doğrusal modelleme anlamına gelmediğinizi varsayarak ), bu yüzden umarım birisi SEM'in ayrımları sorularınıza cevaplarımı geçersiz kılarsa bu yanıtı yorumlayacak veya düzenleyecektir. hiç.

Bununla birlikte, guruların konuşmasını on ay beklemekteyiz, bu yüzden eğer bu onları yapmazsa, sadece kendi başına yapması gerekir, sanırım. Yine de R ile uğraşmamı istediğiniz belirli bir GLM fonksiyonunuz varsa bana bildirin. R ile ilgilenen bir GLM işlevini belirtebilirseniz, # 3'ü doğrudan uygulamanız için nasıl yanıtlayacağınızı anlayabilirim. Ben de simülasyon testi konusunda uzman değilim, ancak diğer dört sorunuzun sim test edilebileceğini düşünüyorum (daha doğrudan).


2
+1 Etkileyici, düşünceli bir yanıt. CV'ye hoş geldiniz, Nick!
whuber
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.