Çoklu regresyon denklemine girilebilecek maksimum bağımsız değişken sayısı


19

Bir kişinin çoklu regresyon denklemine girebileceği bağımsız değişken sayısının sınırı nedir? Sonuç değişkenine göreceli katkıları açısından incelemek istediğim 10 öngörücüm var. Çoklu analizlere uyum sağlamak için bir bonferroni düzeltmesi kullanmalı mıyım?

Yanıtlar:


25

Ne demek istediğini bir "sınır" ile düşünmelisin. Vakalardan daha fazla yordayıcıya sahip olduğunuzda, parametre kestiriminde sorunlarla karşılaştığınız gibi sınırlar vardır (bu cevabın altındaki küçük R simülasyonuna bakın).

Bununla birlikte, istatistiksel güç ve iyi istatistiksel uygulama ile ilgili yumuşak sınırlar hakkında daha fazla konuştuğunuzu düşünüyorum. Bu durumda "sınırlar" ın dili gerçekten uygun değildir. Daha ziyade, daha büyük örnek boyutları daha fazla yordayıcıya sahip olmayı daha makul hale getirme eğilimindedir ve kaç yorganın makul olduğunun eşiği makul bir sürekliliğin sürekliliğine bağlıdır. Sen bulabilirsiniz çoklu regresyon örnek boyutu için başparmak kuralları tartışmaya belirleyicileri sayısına başparmak yapmak referans birçok kurallar gibi, ilgili.

Birkaç puan

  • Bireysel öngörücülerin istatistiksel öneminden daha fazla genel tahmin ile ilgileniyorsanız, tek tek öngörücülerin istatistiksel önemiyle ilgilenmekten daha fazla yordayıcı eklemek mantıklı olabilir.
  • Araştırma sorunuzla ilgili belirli bir istatistiksel modeli test etmekle daha fazla ilgileniyorsanız (örneğin, birçok sosyal bilim uygulamasında yaygın olduğu gibi), muhtemelen belirli tahmin edicileri dahil etmek için nedenleriniz vardır. Bununla birlikte, hangi tahmin edicileri dahil ettiğiniz seçici olma fırsatlarınız da olabilir (örneğin, benzer bir yapıyı ölçen birden fazla değişkeniniz varsa, bunlardan yalnızca birini dahil edebilirsiniz). Teori tabanlı model testi yaparken, birçok seçenek vardır ve hangi öngörücülerin dahil edileceğine dair karar, teoriniz ve araştırma sorunuz arasında yakın bir bağlantı içerir.
  • Sıklıkla bonferroni düzeltmelerini kullanan araştırmacıların regresyon katsayılarının anlamlılık testlerine uygulandığını görmüyorum. Bunun makul bir nedeni, araştırmacıların modelin genel özelliklerini değerlendirmekle daha fazla ilgilenmeleri olabilir.
  • Eğer yordayıcıların göreceli önemini değerlendirmekle ilgileniyorsanız, hem yordayıcı ve sonuç arasındaki iki değişkenli ilişkinin yanı sıra diğer yordayıcılar için yordayıcı ve sonuç denetimi arasındaki ilişkiyi incelemeyi yararlı buluyorum. Birçok öngörücü eklerseniz, birbiriyle yüksek oranda ilişkilendirilmiş öngörücüler eklemeniz daha olasıdır. Bu gibi durumlarda, iki değişkenli ve modele dayalı önem indekslerinin yorumlanması faydalı olabilir, çünkü iki değişkenli bir anlamda önemli bir değişken bir modelde diğer korelasyonlu öngörücüler tarafından gizlenebilir ( burada daha çok bağlantılarla detaylandırıyorum ).


Biraz R simülasyonu

Bu küçük simülasyonu çoklu regresyonda örnek büyüklüğü ve parametre tahmini arasındaki ilişkiyi vurgulamak için yazdım.

set.seed(1)

fitmodel <- function(n, k) {
  # n: sample size
  # k: number of predictors
  # return linear model fit for given sample size and k predictors
  x <- data.frame(matrix( rnorm(n*k), nrow=n))
  names(x) <- paste("x", seq(k), sep="")
  x$y <- rnorm(n)  
  lm(y~., data=x)
}

fitmodelİşlev, iki bağımsız değişken nbir numune boyutu için ve kprediktörler sayısı. Sabiti sabit olarak saymıyorum, ama tahmin ediliyor. Daha sonra rasgele veri üretir ve köngörücü değişkenlerden ay değişkenini tahmin eden bir regresyon modeline uyar ve uygunluğu döndürürüm.

Sorunuzda, 10 öngörücünün çok fazla olup olmadığıyla ilgilendiğinizi belirttiğinizde, aşağıdaki işlev çağrıları, sırasıyla örnek boyutu 9, 10, 11 ve 12 olduğunda ne olduğunu gösterir. Yani, örneklem büyüklüğü öngörücülerin sayısından birinden daha az tahmincilerin sayısından ikiye kadardır

summary(fitmodel(n=9, k=10))
summary(fitmodel(n=10, k=10))
summary(fitmodel(n=11, k=10))
summary(fitmodel(n=12, k=10))

> özet (fitmodel (n = 9, k = 10))

Call:
lm(formula = y ~ ., data = x)

Residuals:
ALL 9 residuals are 0: no residual degrees of freedom!

Coefficients: (2 not defined because of singularities)
            Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.31455         NA      NA       NA
x1           0.34139         NA      NA       NA
x2          -0.45924         NA      NA       NA
x3           0.42474         NA      NA       NA
x4          -0.87727         NA      NA       NA
x5          -0.07884         NA      NA       NA
x6          -0.03900         NA      NA       NA
x7           1.08482         NA      NA       NA
x8           0.62890         NA      NA       NA
x9                NA         NA      NA       NA
x10               NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:     1,  Adjusted R-squared:   NaN 
F-statistic:   NaN on 8 and 0 DF,  p-value: NA 

Örneklem büyüklüğü tahmin edicilerin sayısından daha azdır. Sadece biri sabit olan 9 parametreyi tahmin etmek mümkündür.

> özet (fitmodel (n = 10, k = 10))

Call:
lm(formula = y ~ ., data = x)

Residuals:
ALL 10 residuals are 0: no residual degrees of freedom!

Coefficients: (1 not defined because of singularities)
            Estimate Std. Error t value Pr(>|t|)
(Intercept)   0.1724         NA      NA       NA
x1           -0.3615         NA      NA       NA
x2           -0.4670         NA      NA       NA
x3           -0.6883         NA      NA       NA
x4           -0.1744         NA      NA       NA
x5           -1.0331         NA      NA       NA
x6            0.3886         NA      NA       NA
x7           -0.9886         NA      NA       NA
x8            0.2778         NA      NA       NA
x9            0.4616         NA      NA       NA
x10               NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:     1,  Adjusted R-squared:   NaN 
F-statistic:   NaN on 9 and 0 DF,  p-value: NA 

Örneklem büyüklüğü, öngörücülerin sayısıyla aynıdır. Sadece biri sabit olan 10 parametre tahmin etmek mümkündür.

> özet (fitmodel (n = 11, k = 10))

Call:
lm(formula = y ~ ., data = x)

Residuals:
ALL 11 residuals are 0: no residual degrees of freedom!

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept)  -0.9638         NA      NA       NA
x1           -0.8393         NA      NA       NA
x2           -1.5061         NA      NA       NA
x3           -0.4917         NA      NA       NA
x4            0.3251         NA      NA       NA
x5            4.4212         NA      NA       NA
x6            0.7614         NA      NA       NA
x7           -0.4195         NA      NA       NA
x8            0.2142         NA      NA       NA
x9           -0.9264         NA      NA       NA
x10          -1.2286         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:     1,  Adjusted R-squared:   NaN 
F-statistic:   NaN on 10 and 0 DF,  p-value: NA 

Örneklem büyüklüğü tahmin edicilerin sayısından bir fazladır. Sabit dahil tüm parametreler tahmin edilir.

> özet (fitmodel (n = 12, k = 10))

Call:
lm(formula = y ~ ., data = x)

Residuals:
        1         2         3         4         5         6         7         8         9        10        11 
 0.036530 -0.042154 -0.009044 -0.117590  0.171923 -0.007976  0.050542 -0.011462  0.010270  0.000914 -0.083533 
       12 
 0.001581 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)  
(Intercept)  0.14680    0.11180   1.313   0.4144  
x1           0.02498    0.09832   0.254   0.8416  
x2           1.01950    0.13602   7.495   0.0844 .
x3          -1.76290    0.26094  -6.756   0.0936 .
x4           0.44832    0.16283   2.753   0.2218  
x5          -0.76818    0.15651  -4.908   0.1280  
x6          -0.33209    0.18554  -1.790   0.3244  
x7           1.62276    0.21562   7.526   0.0841 .
x8          -0.47561    0.18468  -2.575   0.2358  
x9           1.70578    0.31547   5.407   0.1164  
x10          3.25415    0.46447   7.006   0.0903 .
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 0.2375 on 1 degrees of freedom
Multiple R-squared: 0.995,  Adjusted R-squared: 0.9452 
F-statistic: 19.96 on 10 and 1 DF,  p-value: 0.1726 

Örneklem büyüklüğü, öngörücülerin sayısından iki daha fazladır ve nihayet tüm modelin uygunluğunu tahmin etmek mümkündür.


Birisi lütfen ilk senaryodaki standart hataların (n = 9, k = 10) neden NA olduğunu açıklayabilir mi? Ben standart hata formülü var, ama NA almak için payda nasıl 0 görmüyorum.
matsuo_basho

12

Buna genellikle belirli sayıda parametreye sahip bir modelin, orijinal model geliştirme örneğinde yapılan tahminler kadar doğru olan örnek dışı tahminler verip vermeyeceği açısından bakarım. Kalibrasyon eğrileri, X * Beta ortalama kare hataları ve kestirimci ayrımcılık indeksleri tipik olarak kullanılan önlemlerden bazılarıdır. Bu, 15: 1 kuralı (incelenen veya tahmin edilen parametre başına 15 etkili bir örneklem büyüklüğü) gibi bazı temel kuralların geldiği yerdir.

Çokluk ile ilgili olarak, model bekletmeleri ve dağıtım varsayımlarının karşılandığı varsayılarak çokluk için mükemmel bir ayarlama, tüm betaların (kesişme hariç) sıfır olduğu küresel testtir. Bu tipik olarak bir olasılık oranı veya bir F testi kullanılarak test edilir.

Model geliştirmeye iyi çalışma eğilimi gösteren iki genel yaklaşım vardır. (1) Yeterli bir numune büyüklüğüne sahip olun ve önceden belirlenmiş tüm modele uyun ve (2) mevcut örneklem büyüklüğünün destekleyeceği regresyonda yalnızca etkili derecede serbestlik derecesine izin vermek için cezalandırılmış maksimum olabilirlik tahmini kullandı. [Cezalandırılmadan kademeli değişken seçimi, bunun işe yaramadığı bilinen bir rol oynamamalıdır.]


Bu temel kurallar, gerçek regresyon katsayılarının büyüklüğü ve hata varyansının büyüklüğü hakkındaki varsayımlara dayanıyor mu? Hata sapmasının çok küçük olduğu biliniyorsa, veri noktalarının parametrelere çok daha küçük bir oranının kabul edilebilir olacağını düşünmek doğru olur muydu?
mark999

1
Bahsetmeyi ihmal ettiğim mükemmel bir nokta. 15: 1 kuralı, biyomedikal ve sosyal bilimlerde görülen sinyal türleri için geçerlidir. Kalıntı varyansınız düşük olduğunda, daha birçok parametreyi doğru olarak tahmin edebilirsiniz.
Frank Harrell

10

npmpmmnp

1mKpσ1/günlük(p)σ1Xσ1p


6

Prensip olarak, kaç tahmin ediciye sahip olabileceğiniz konusunda bir sınır yoktur. Prensip olarak 2 milyar "beta" yı tahmin edebilirsiniz. Ancak uygulamada olan, yeterli veri veya yeterli ön bilgi olmadan, çok verimli bir egzersiz olmayacağıdır. Belirli parametreler çok iyi belirlenmeyecek ve analizden fazla bir şey öğrenmeyeceksiniz.

Şimdi modeliniz hakkında çok fazla ön bilginiz yoksa (model yapısı, parametre değerleri, gürültü, vb.) Bu bilgileri sağlamak için verilere ihtiyacınız olacaktır. Bu genellikle en yaygın durumdur, bu mantıklıdır, çünkü zaten oldukça iyi bildiğiniz bir şey hakkında veri toplamak (ve $$$ harcamak) için oldukça iyi bir nedene ihtiyacınız vardır. Durumunuz buysa, makul bir sınır parametre başına çok sayıda gözlem yapmaktır. 12 parametreniz (10 eğim beta, 1 kesişme ve bir gürültü parametresi) vardır, bu nedenle 100 gözlemin üzerindeki herhangi bir şey, bazı sonuçlar çıkarabilmek için parametrelerinizi yeterince iyi belirleyebilmelidir.

Ancak "zor ve hızlı" kurallar yoktur. Sadece 10 tahmin cihazı ile hesaplama süresi ile ilgili herhangi bir sorun yaşamamalısınız (eğer daha iyi bir bilgisayar edinin). Bu sadece daha fazla iş yapmak anlamına gelir, çünkü emilecek 11 veri boyutuna sahipsiniz - verileri görselleştirmeyi zorlaştırır. Sadece 1 bağımlı değişkenli regresyonun temel ilkeleri aslında o kadar da farklı değildir.

Bonferroni düzeltmesi ile ilgili sorun, çok fazla güçten ödün vermeden önem düzeyinizi ayarlamanın makul bir yolu olması için, bağımsız olmak için düzelttiğiniz hipoteze ihtiyaç duymanızdır (yani, bir hipotezin doğru olduğunu öğrenmek, başka bir hipotez doğrudur). Bu, örneğin birden fazla regresyondaki standart "t-testi" için sıfır değildir. Test istatistiği modelde başka ne olduğuna bağlıdır - bu hipotezin bağımlı olduğunu söylemenin dolambaçlı bir yoludur. Ya da bunu söylemenin daha sık kullanılan bir yolu, t-değerinin sıfır öngörücüsüne sıfır olan örnekleme dağılımının diğer parametrelerin sıfır olduğuna bağlıdır. Yani burada bonferroni düzeltmesini kullanmak size daha düşük bir "genel"

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.