จำนวนตัวแปรอิสระสูงสุดที่สามารถป้อนลงในสมการการถดถอยหลายตัว


19

จำนวนตัวแปรอิสระที่ จำกัด ไว้ที่หนึ่งอาจป้อนในสมการถดถอยหลายคืออะไร? ฉันมีตัวทำนาย 10 ตัวที่ฉันต้องการตรวจสอบในแง่ของการมีส่วนร่วมของพวกเขากับตัวแปรผลลัพธ์ ฉันควรใช้การแก้ไข bonferroni เพื่อปรับสำหรับการวิเคราะห์หลายครั้งหรือไม่

คำตอบ:


25

คุณต้องคิดเกี่ยวกับสิ่งที่คุณหมายถึงโดย "ขีด จำกัด " มีข้อ จำกัด เช่นเมื่อคุณมีตัวทำนายมากกว่ากรณีคุณพบปัญหาในการประมาณค่าพารามิเตอร์ (ดูการจำลอง R เล็กน้อยที่ด้านล่างของคำตอบนี้)

อย่างไรก็ตามฉันคิดว่าคุณกำลังพูดถึงข้อ จำกัด ที่อ่อนนุ่มเกี่ยวกับพลังงานทางสถิติและการฝึกฝนทางสถิติที่ดี ในกรณีนี้ภาษาของ "ขีด จำกัด " ไม่เหมาะสมจริง ๆ แต่ขนาดของกลุ่มตัวอย่างที่ใหญ่กว่านั้นมีแนวโน้มที่จะทำให้มีเหตุผลมากกว่าที่จะมีตัวทำนายมากขึ้นและเกณฑ์ของจำนวนตัวทำนายที่สมเหตุสมผลนั้นมีเหตุผลเพียงพอที่จะทำให้เกิดความต่อเนื่องของความสมเหตุสมผล คุณอาจพบว่าการอภิปรายเกี่ยวกับกฎของหัวแม่มือสำหรับขนาดตัวอย่างในการถดถอยหลายครั้งที่เกี่ยวข้องเนื่องจากกฎของหัวแม่มือจำนวนมากอ้างอิงถึงจำนวนผู้ทำนาย

คะแนนน้อย

  • หากคุณมีความกังวลกับการทำนายโดยรวมมากกว่าด้วยนัยสำคัญทางสถิติของตัวทำนายแต่ละตัวมันอาจเป็นเหตุผลที่สมควรที่จะรวมตัวทำนายเพิ่มเติมมากกว่าถ้าคุณเกี่ยวข้องกับนัยสำคัญทางสถิติของตัวทำนายแต่ละตัว
  • หากคุณกังวลมากขึ้นกับการทดสอบแบบจำลองทางสถิติเฉพาะที่เกี่ยวข้องกับคำถามการวิจัยของคุณ (เช่นที่พบได้ทั่วไปในแอปพลิเคชั่นทางสังคมศาสตร์หลายรายการ) สันนิษฐานว่าคุณมีเหตุผลในการรวมตัวทำนายเฉพาะ อย่างไรก็ตามคุณอาจมีโอกาสเลือกตัวทำนายที่คุณรวมไว้ (เช่นหากคุณมีตัวแปรหลายตัวที่วัดโครงสร้างที่คล้ายกันคุณอาจรวมหนึ่งในนั้น) เมื่อทำการทดสอบแบบจำลองตามทฤษฎีมีหลายทางเลือกและการตัดสินใจเกี่ยวกับตัวทำนายรวมถึงการเชื่อมต่อที่ใกล้ชิดระหว่างทฤษฎีและคำถามการวิจัยของคุณ
  • ฉันไม่เห็นนักวิจัยที่ใช้การแก้ไข bonferroni บ่อยๆกับการทดสอบความสำคัญของสัมประสิทธิ์การถดถอย เหตุผลหนึ่งที่สมเหตุสมผลสำหรับเรื่องนี้อาจเป็นเพราะนักวิจัยสนใจที่จะประเมินคุณสมบัติโดยรวมของตัวแบบ
  • หากคุณมีความสนใจในการประเมินความสำคัญเชิงสัมพัทธ์ของตัวทำนายฉันพบว่ามีประโยชน์ในการตรวจสอบทั้งความสัมพันธ์แบบแยกส่วนระหว่างตัวทำนายและผลลัพธ์รวมถึงความสัมพันธ์ระหว่างตัวทำนายและการควบคุมผลลัพธ์สำหรับตัวทำนายอื่น ๆ หากคุณรวมตัวทำนายหลาย ๆ ตัวมันมักจะเป็นไปได้มากกว่าที่คุณจะรวมตัวทำนายที่มีความสัมพันธ์สูง ในกรณีเช่นนี้การตีความหมายของทั้งสองตัวแปรและรูปแบบตามดัชนีสำคัญจะมีประโยชน์เป็นตัวแปรที่สำคัญในความรู้สึก bivariate อาจจะซ่อนอยู่ในรูปแบบโดยการทำนายความสัมพันธ์อื่น ๆ ( ผมอธิบายรายละเอียดเพิ่มเติมเกี่ยวกับเรื่องนี้ที่นี่มีการเชื่อมโยง )


การจำลอง R เล็กน้อย

ฉันเขียนการจำลองเล็กน้อยนี้เพื่อเน้นความสัมพันธ์ระหว่างขนาดตัวอย่างและการประมาณค่าพารามิเตอร์ในการถดถอยหลายครั้ง

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ฟังก์ชั่นใช้เวลาสองข้อโต้แย้งnสำหรับขนาดของกลุ่มตัวอย่างและkจำนวนพยากรณ์ ฉันไม่นับค่าคงที่เป็นตัวทำนาย แต่ถูกประมาณ จากนั้นฉันจะสร้างข้อมูลแบบสุ่มและเหมาะสมกับตัวแบบการถดถอยทำนายตัวแปร ay จากkตัวแปรตัวทำนายและคืนค่าที่พอดี

เมื่อคุณพูดถึงคำถามที่คุณสนใจว่าตัวทำนาย 10 ตัวมากเกินไปการเรียกใช้ฟังก์ชันต่อไปนี้จะแสดงสิ่งที่เกิดขึ้นเมื่อขนาดตัวอย่างคือ 9, 10, 11 และ 12 ตามลำดับ นั่นคือขนาดตัวอย่างคือหนึ่งในจำนวนที่น้อยกว่าจำนวนของตัวทำนายถึงสองมากกว่าจำนวนของตัวทำนาย

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

> สรุป (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 

ขนาดตัวอย่างน้อยกว่าหนึ่งตัวทำนาย เป็นไปได้ที่จะประมาณ 9 พารามิเตอร์เท่านั้นซึ่งหนึ่งในนั้นคือค่าคงที่

> สรุป (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 

ขนาดตัวอย่างเท่ากับจำนวนผู้ทำนาย มันเป็นไปได้ที่จะประมาณ 10 พารามิเตอร์ซึ่งหนึ่งในนั้นคือค่าคงที่

> สรุป (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 

ขนาดตัวอย่างคือหนึ่งในจำนวนที่มากกว่าตัวทำนาย พารามิเตอร์ทั้งหมดได้รับการประมาณรวมถึงค่าคงที่

> สรุป (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 

ขนาดตัวอย่างนั้นมากกว่าตัวทำนายสองเท่าและในที่สุดก็เป็นไปได้ที่จะประเมินความพอดีของแบบจำลองโดยรวม


ใครช่วยอธิบายหน่อยได้ไหมว่าทำไมข้อผิดพลาดมาตรฐานในสถานการณ์แรก (n = 9, k = 10) คือ NA ฉันมีสูตรข้อผิดพลาดมาตรฐาน แต่ไม่เห็นว่าตัวส่วนจะเป็น 0 เพื่อให้เรารับ NA ได้อย่างไร
matsuo_basho

12

ฉันมักจะมองสิ่งนี้จากมุมมองว่าแบบจำลองที่พอดีกับพารามิเตอร์จำนวนหนึ่งมีแนวโน้มที่จะให้ผลลัพธ์การคาดการณ์นอกตัวอย่างที่แม่นยำเท่ากับการคาดการณ์ที่ทำกับตัวอย่างการพัฒนาแบบจำลองดั้งเดิมหรือไม่ เส้นโค้งการปรับเทียบหมายถึงข้อผิดพลาดกำลังสองของ X * Beta และดัชนีของการเลือกปฏิบัติที่คาดเดาได้คือมาตรการบางอย่างที่ใช้โดยทั่วไป นี่คือที่บางส่วนของกฎของหัวแม่มือมาจากเช่นกฎ 15: 1 (ขนาดตัวอย่างที่มีประสิทธิภาพ 15 ต่อการตรวจสอบพารามิเตอร์หรือการประมาณ)

เกี่ยวกับหลายหลากการปรับที่สมบูรณ์แบบสำหรับหลายหลากสมมติว่ามีการถือแบบจำลองและการกระจายตัวเป็นไปตามสมมติฐานคือการทดสอบทั่วโลกที่ betas ทั้งหมด (นอกเหนือจากการสกัดกั้น) เป็นศูนย์ โดยทั่วไปจะมีการทดสอบโดยใช้อัตราส่วนความน่าจะเป็นหรือการทดสอบ F

มีสองวิธีโดยรวมในการพัฒนาแบบจำลองที่มีแนวโน้มที่จะทำงานได้ดี (1) มีขนาดตัวอย่างที่เพียงพอและพอดีกับโมเดลที่ระบุไว้ล่วงหน้าทั้งหมดและ (2) ใช้การประเมินความเป็นไปได้สูงสุดที่ถูกลงโทษเพื่ออนุญาตให้มีอิสระในระดับที่มีประสิทธิภาพในการถดถอยเท่านั้นเนื่องจากขนาดตัวอย่างปัจจุบันจะรองรับ [การเลือกตัวแปรแบบขั้นตอนโดยไม่มีการลงโทษไม่ควรไม่มีบทบาทเนื่องจากเป็นที่ทราบกันว่าใช้งานไม่ได้]


กฎง่ายๆเหล่านั้นตั้งอยู่บนสมมติฐานเกี่ยวกับขนาดของสัมประสิทธิ์การถดถอยที่แท้จริงและขนาดของความแปรปรวนข้อผิดพลาดหรือไม่? ฉันจะคิดถูกไหมว่าถ้าความแปรปรวนข้อผิดพลาดนั้นเล็กมากอัตราส่วนของจุดข้อมูลต่อพารามิเตอร์ที่น้อยกว่าจะยอมรับได้หรือไม่
mark999

1
นั่นเป็นจุดที่ยอดเยี่ยมที่ฉันไม่ได้พูดถึง กฎ 15: 1 สำหรับประเภทของสัญญาณ: อัตราส่วนเสียงรบกวนที่เห็นในชีวการแพทย์และสังคมศาสตร์ เมื่อคุณมีความแปรปรวนตกค้างต่ำคุณสามารถประมาณพารามิเตอร์อื่น ๆ อีกมากมายได้อย่างแม่นยำ
Frank Harrell

10

nพีม.พีม.ม.nพี

1ม.Kพีσ1/เข้าสู่ระบบ(พี)σ1Xσ1พี


6

โดยหลักการแล้วไม่มีการ จำกัด จำนวนตัวทำนายที่คุณสามารถมีได้ คุณสามารถประมาณ 2 พันล้าน "เบต้า" ในหลักการ แต่สิ่งที่เกิดขึ้นในทางปฏิบัติคือถ้าไม่มีข้อมูลเพียงพอหรือมีข้อมูลก่อนเพียงพอมันจะไม่พิสูจน์การออกกำลังกายที่มีผลมาก จะไม่มีการกำหนดพารามิเตอร์ใดเป็นพิเศษและคุณจะไม่ได้เรียนรู้อะไรมากมายจากการวิเคราะห์

ตอนนี้ถ้าคุณไม่มีข้อมูลก่อนหน้ามากมายเกี่ยวกับแบบจำลองของคุณ (โครงสร้างแบบจำลอง, ค่าพารามิเตอร์, จุดรบกวน ฯลฯ ) จากนั้นคุณจะต้องใช้ข้อมูลเพื่อให้ข้อมูลนี้ นี่เป็นสถานการณ์ที่พบได้บ่อยที่สุดซึ่งปกติแล้วคุณจะต้องมีเหตุผลที่ดีในการรวบรวมข้อมูล (และใช้จ่าย $$$) เกี่ยวกับสิ่งที่คุณรู้อยู่แล้ว หากนี่เป็นสถานการณ์ของคุณข้อ จำกัด ที่สมเหตุสมผลคือการสังเกตจำนวนมากต่อพารามิเตอร์ คุณมี 12 พารามิเตอร์ (Betas 10 ความชัน, 1 จุดตัดและพารามิเตอร์เสียง) ดังนั้นการสังเกตมากกว่า 100 ครั้งจะสามารถกำหนดพารามิเตอร์ของคุณได้ดีพอที่จะสรุปได้

แต่ไม่มีกฎ "ยากและเร็ว" ด้วยผู้ทำนายเพียง 10 คนคุณจะไม่มีปัญหากับเวลาในการคำนวณ (รับคอมพิวเตอร์ที่ดีกว่าถ้าคุณทำ) นั่นหมายถึงการทำงานมากขึ้นเพราะคุณมีข้อมูล 11 มิติที่จะดูดซับทำให้ยากต่อการมองเห็นข้อมูล หลักการพื้นฐานจากการถดถอยที่มีตัวแปรตาม 1 ตัวเท่านั้นนั้นไม่แตกต่างกัน

ปัญหาของการแก้ไข bonferroni คือเพื่อให้เป็นวิธีที่เหมาะสมในการปรับระดับความสำคัญของคุณโดยไม่ต้องใช้พลังงานมากเกินไปคุณต้องใช้สมมติฐานที่คุณกำลังแก้ไขให้เป็นอิสระ (เช่นการเรียนรู้ว่าสมมติฐานหนึ่งเป็นจริงไม่บอกคุณว่า สมมติฐานอื่นเป็นจริง) สิ่งนี้ไม่เป็นความจริงสำหรับ "t-test" มาตรฐานในการถดถอยหลายครั้งสำหรับการมีประสิทธิภาพร่วมเป็นศูนย์ตัวอย่างเช่น สถิติการทดสอบขึ้นอยู่กับสิ่งอื่นในแบบจำลอง - ซึ่งเป็นวิธีวงเวียนในการบอกว่าสมมติฐานนั้นขึ้นอยู่กับ หรือวิธีที่พูดบ่อยกว่านี้คือการแจกแจงการสุ่มตัวอย่างของเงื่อนไข t-value บนตัวทำนาย ith เป็นศูนย์ขึ้นอยู่กับพารามิเตอร์อื่น ๆ ที่เป็นศูนย์ ดังนั้นการใช้การแก้ไข bonferroni ที่นี่อาจจะทำให้คุณ "ต่ำลง" โดยรวม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.