Mengapa regresi linier tidak dapat memprediksi hasil dari urutan deterministik sederhana?


9

Seorang kolega saya mengirimi saya masalah ini yang tampaknya membuat putaran di internet:

If $3 = 18, 4 = 32, 5 = 50, 6 = 72, 7 = 98$, Then, $10 =$ ?

Jawabannya sepertinya 200.

3*6  
4*8  
5*10  
6*12  
7*14  
8*16  
9*18  
10*20=200  

Ketika saya melakukan regresi linier di R:

data     <- data.frame(a=c(3,4,5,6,7), b=c(18,32,50,72,98))  
lm1      <- lm(b~a, data=data)  
new.data <- data.frame(a=c(10,20,30))  
predict  <- predict(lm1, newdata=new.data, interval='prediction')  

Saya mendapat:

  fit      lwr      upr  
1 154 127.5518 180.4482  
2 354 287.0626 420.9374  
3 554 444.2602 663.7398  

Jadi model linier saya memprediksi .10=154

Ketika saya memplot data itu terlihat linear ... tapi jelas saya berasumsi sesuatu yang tidak benar.

Saya mencoba mempelajari cara terbaik menggunakan model linear dalam R. Apa cara yang tepat untuk menganalisis seri ini? Di mana saya salah?


7
Ahem . (i) Ekspresi masalahnya tidak masuk akal. Bagaimana 3 = 18? Tentunya maksudnya adalah sesuatu seperti ; (ii) jika Anda dapat melihat cukup untuk menulis , , dll., tentu saja Anda dapat melihat cukup untuk membagi istilah kedua di masing-masing ( , , dan seterusnya) untuk kemudian menulis: , , dll, dan langsung melihat kuadratik, . (Anda melakukan bagian yang sulit, langkah selanjutnya bahkan lebih sederhana!)18 = 3 × 6 32 = 4 × 8 6 = 3 × 2 8 = 4 × 2 18 = 3 × 3 × 2 32 = 4 × 4 × 2 f ( x ) = 2 x 2f(3)=1818=3×632=4×86=3×28=4×218=3×3×232=4×4×2f(x)=2x2
Glen_b -Reinstate Monica

4
Selain itu, apakah masalah menentukan kriteria konten informasi minimum pada jawabannya? Jika saya mengingat matematika saya dengan benar, ada banyak sekali fungsi tak terhingga yang sesuai dengan poin-poin ini, semuanya memberikan jawaban berbeda untuk . Saya biasanya tidak bertele-tele, tetapi email pembuang waktu layak mendapatkannya. f(10)
Bintang terang

1
@TrevorAlexander jika Anda pikir pertanyaan ini buang-buang waktu, mengapa repot-repot menanggapinya? Jelas beberapa orang menganggapnya menarik.
jwg

@ jwg karena ada yang salah di internet . ;)
terang

Jawaban:


23

Model regresi, seperti model yang sesuai dengan lm()asumsi secara implisit mengasumsikan bahwa proses pembuatan data yang mendasarinya adalah probabilistik . Anda mengasumsikan bahwa aturan yang Anda coba modelkan adalah deterministik . Oleh karena itu, ada ketidaksesuaian antara apa yang Anda coba lakukan dan cara Anda mencoba melakukannya.

Ada perangkat lunak lain (yaitu, bukan R) yang secara eksplisit dirancang untuk menemukan / menyesuaikan fungsi paling sederhana untuk data deterministik (contohnya adalah Eureqa ). Mungkin ada paket R untuk itu (yang saya tidak tahu), tetapi R dimaksudkan untuk pemodelan statistik data probabilistik.

Adapun jawaban yang lm()memberi Anda, itu terlihat masuk akal, dan bisa jadi benar. Namun, saya mengumpulkan konteks di mana masalah ini disajikan dengan kuat menyiratkan bahwa itu harus dipahami sebagai deterministik. Jika itu tidak terjadi, dan Anda bertanya-tanya apakah kecocokan itu masuk akal, satu hal yang mungkin Anda perhatikan adalah bahwa dua titik data ekstrem di atas garis regresi, sedangkan data tengah semuanya di bawahnya. Ini menunjukkan bentuk fungsional yang tidak ditentukan. Ini juga dapat dilihat pada residual vs plot yang cocok ( plot(lm1, which=1):

masukkan deskripsi gambar di sini

Sedangkan untuk model fit oleh @AlexWilliams, terlihat jauh lebih baik:

masukkan deskripsi gambar di sini


17
+1 Plot residual menceritakan kisah sedemikian rupa sehingga orang tidak dapat melewatkannya. Memang, ini menunjukkan mengapa OP 'tampak linier' sering menyesatkan - banyak fungsi melengkung bisa terlihat 'hampir lurus' jika kita hanya melihat beberapa titik tidak dekat dengan titik balik. Jika Anda berpikir itu linier, ambil garis itu dan lihat apa yang tersisa!
Glen_b -Reinstate Monica

1
Info yang sangat berguna! Terima kasih, saya sangat menghargainya
Brett Phinney

1
Ini sama sekali tidak ada hubungannya dengan perbedaan antara data probabilistik dan deterministik. Regresi linier akan cocok dan mengekstrapolasi data deterministik jika itu linier. Akan gagal untuk memprediksi dengan baik untuk data probabilistik jika model yang mendasarinya adalah kuadratik.
jwg

3
@ jwg: Ada banyak hubungannya dengan itu. Atau apakah Anda akan selalu cocok dengan urutan pengamatan dengan polinomial tingkat ketika tidak ada polinomial tingkat rendah yang cocok? ( n - 1 )n(n1)
Scortchi

Saya tidak berpikir dia mencari yang sempurna. Dia mencoba memahami mengapa nilai ekstrapolasi sangat jauh.
jwg

22

Tren kuadratik tidak linier. Mencoba:

lm1 <- lm(b~I(a^2), data=data)

Pembaruan: Ini kodenya.

data <- data.frame(a=c(3,4,5,6,7),b=c(18,32,50,72,98))
lm1 <- lm(b~I(a^2), data=data)
new.data <- data.frame(a=c(10,20,30))
predict(lm1, newdata = new.data, interval='prediction')

Dan output:

   fit  lwr  upr
1  200  200  200
2  800  800  800
3 1800 1800 1800

Jawaban ini tampaknya sedikit melingkar bagi saya: inti masalahnya adalah mengenali perilaku kuadratik. Anda dengan benar menunjukkan bahwa setelah perilaku kuadrat ditentukan, regresi linier dapat menemukan koefisien. Tetapi sebenarnya Anda sudah melakukan analisis penting pada saat Anda menuliskan baris pertama dari jawaban ini.
Whuber

5
@whuber - Pertanyaannya adalah mengapa model linier gagal. Gagal karena bentuk fungsional tidak linier, itu kuadratik. Saya ingin memberikan jawaban yang sederhana dan to the point. Jawaban Gung melakukan pekerjaan yang baik untuk masuk ke detail, dan menunjukkan bagaimana Anda dapat menggunakan plot residual untuk menghasilkan model yang lebih baik. (Saya baru saja melakukannya di atas pena dan kertas.) Saya setuju jawabannya lebih rinci dan lengkap dan saya telah memutarnya.
Alex Williams

13

Saya ragu untuk menambahkan jawaban bagus yang diberikan oleh Alex Williams dan gung, tetapi ada hal lain yang harus saya pikirkan. Pertanyaannya menggunakan frasa 'regresi linier' dan 'model linier', kemungkinan menunjukkan bahwa mereka memiliki arti yang sama. Namun, arti biasa dari 'regresi linier' mengacu pada Model Regresi Linier Klasik (CLRM) di mana 'linier' berarti 'linier dalam parameter'. Ini adalah kondisi pada parameter, bukan pada variabel independen. Jadi model kuadratik seperti:

Yi=β1+β2Xi2

masih linear dalam arti CLRM, karena linear dalam parameter dan . Sebaliknya, model:β 2β1β2

Yi=β1+β2Xi

linear dalam parameternya dan juga linear dalam . Daripada menyebutnya model linier, pernyataan yang lebih tepat adalah bahwa ia linear dalam parameternya dan memiliki bentuk fungsional linier. Jadi dapat dikatakan bahwa deret dapat dianalisis dengan model yang linier dalam parameternya, asalkan memiliki bentuk fungsional kuadratik (seperti yang ditunjukkan oleh Alex Williams), tetapi tidak oleh model yang memiliki bentuk fungsional linier.Xi


1
Saya selalu kesulitan mengingat ini. Ini adalah tambahan yang bagus untuk jawaban lainnya.
naught101
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.