วิธีการอ่านความดีของพอดีกับ nls ของ R?


12

ฉันพยายามตีความผลลัพธ์ของ nls () ฉันได้อ่านโพสต์นี้แต่ฉันยังไม่เข้าใจวิธีการเลือกแบบที่ดีที่สุด จากความพอดีของฉันฉันมีสองเอาต์พุต:

> summary(m)

  Formula: y ~ I(a * x^b)

  Parameters:
  Estimate Std. Error t value Pr(>|t|)    
  a 479.92903   62.96371   7.622 0.000618 ***
  b   0.27553    0.04534   6.077 0.001744 ** 
  ---
  Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

  Residual standard error: 120.1 on 5 degrees of freedom

  Number of iterations to convergence: 10 
  Achieved convergence tolerance: 6.315e-06 

และ

> summary(m1)

  Formula: y ~ I(a * log(x))

  Parameters:
  Estimate Std. Error t value Pr(>|t|)    
  a   384.49      50.29   7.645 0.000261 ***
  ---
  Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

  Residual standard error: 297.4 on 6 degrees of freedom

  Number of iterations to convergence: 1 
  Achieved convergence tolerance: 1.280e-11

คนแรกมีสองพารามิเตอร์และข้อผิดพลาดที่เหลือน้อย พารามิเตอร์เดียวที่สองเท่านั้น แต่มีข้อผิดพลาดตกค้างต่ำที่สุด แบบไหนดีที่สุด?


4
มีมากกว่าการประเมินแบบจำลองมากกว่าการดูสถิติสรุปหนึ่งหรือสองอย่าง เศษซากมีลักษณะอย่างไร ข้อมูลใดแสดงว่ามีการใช้ประโยชน์มากเกินไปหรือไม่ ความดีของการวินิจฉัยแบบพอดีพูดว่าอย่างไร? ทฤษฎีแนะนำแบบจำลองเหล่านี้อย่างใดอย่างหนึ่งหรือไม่ ค่าของเหมาะสมเหล่านี้แตกต่างกันอย่างมีนัยสำคัญและที่สำคัญ? อื่น ๆx
whuber

3
ฉันลบคำตอบของฉันซึ่งแนะนำให้ใช้AICเพราะความคิดเห็นทำให้เป็นกรณีที่น่าสนใจว่า AIC นั้นไม่สามารถใช้งานได้โดยทั่วไปสำหรับการเลือกความnlsพอดี ฉันมักจะพยายามตัดสินใจแบบไม่เชิงเส้นโดยอาศัยความรู้ด้านกลไกโดยเฉพาะถ้าชุดข้อมูลมีขนาดเล็กเท่าของคุณ
Roland

1
อืมม ผู้แสดงความคิดเห็นดั้งเดิมบนคำตอบที่ลบแล้วของ @ Roland จะยินดีที่จะโพสต์ความคิดเห็นใหม่หรือไม่ มันไม่ชัดเจนในทันทีสำหรับฉันว่าทำไม AIC ถึงไม่เหมาะสม ... (แม้ว่าstat.ethz.ch/pipermail/r-help/2010-August/250742.htmlให้คำแนะนำบางอย่าง) - และเป็นบันทึกสุดท้ายหากคุณ 'อีกครั้งพยายามที่จะระบุการเปลี่ยนแปลงอำนาจคุณอาจลอง Box-Cox transformationss ( boxcoxในMASSแพคเกจ)
เบน Bolker

1
AIC สามารถใช้เพื่อเลือกรุ่น

คำตอบ:


2

คุณสามารถใช้การทดสอบ F และ anova เพื่อเปรียบเทียบได้ นี่คือรหัสบางส่วน

> x <- 1:10
> y <- 2*x + 3                            
> yeps <- y + rnorm(length(y), sd = 0.01)
> 
> 
> m1=nls(yeps ~ a + b*x, start = list(a = 0.12345, b = 0.54321))
> summary(m1)

Formula: yeps ~ a + b * x

Parameters:
   Estimate Std. Error t value Pr(>|t|)    
a 2.9965562  0.0052838   567.1   <2e-16 ***
b 2.0016282  0.0008516  2350.6   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Residual standard error: 0.007735 on 8 degrees of freedom

Number of iterations to convergence: 2 
Achieved convergence tolerance: 3.386e-09 

> 
> 
> m2=nls(yeps ~ a + b*x+c*I(x^5), start = list(a = 0.12345, b = 0.54321,c=10))
> summary(m2)

Formula: yeps ~ a + b * x + c * I(x^5)

Parameters:
   Estimate Std. Error  t value Pr(>|t|)    
a 3.003e+00  5.820e-03  516.010   <2e-16 ***
b 1.999e+00  1.364e-03 1466.004   <2e-16 ***
c 2.332e-07  1.236e-07    1.886    0.101    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Residual standard error: 0.006733 on 7 degrees of freedom

Number of iterations to convergence: 2 
Achieved convergence tolerance: 1.300e-06 

> 
> anova(m1,m2)
Analysis of Variance Table

Model 1: yeps ~ a + b * x
Model 2: yeps ~ a + b * x + c * I(x^5)
  Res.Df Res.Sum Sq Df     Sum Sq F value Pr(>F)
1      8 0.00047860                             
2      7 0.00031735  1 0.00016124  3.5567 0.1013
>

5
ข้อมูลเพิ่มเติมเกี่ยวกับวิธีตีความผลลัพธ์
skan

กรุณาขยาย ด้วยชุดข้อมูลของฉันฉันจะไม่ได้รับผลลัพธ์สำหรับค่า F และสำหรับ Pr (> F) จุดประสงค์ของการวิเคราะห์คืออะไร? ฉันคุ้นเคยกับการใช้เพื่อเปรียบเทียบหมวดหมู่ที่ไม่ใช่รุ่นเท่านั้น
user3386170
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.