Bagaimana cara mendeteksi ketika model regresi terlalu pas?


14

Ketika Anda yang melakukan pekerjaan itu, menyadari apa yang Anda lakukan, Anda mengembangkan perasaan ketika Anda memiliki model yang terlalu pas. Untuk satu hal, Anda dapat melacak tren atau kemunduran di Adjusted R Square model. Anda juga dapat melacak penurunan yang serupa pada nilai p dari koefisien regresi dari variabel utama.

Tetapi, ketika Anda baru saja membaca studi orang lain dan Anda tidak memiliki wawasan mengenai proses pengembangan model internal mereka sendiri bagaimana Anda dapat dengan jelas mendeteksi apakah suatu model terlalu cocok atau tidak.


Hanya dengan melemparkan beberapa ide pada subjek, jika penelitian ini mengungkapkan statistik regresi standar, Anda bisa fokus pada statistik t dan nilai p dari koefisien. Jika RSquare dari model tinggi; tetapi, satu atau lebih variabel memiliki stat <2,0; ini bisa menjadi bendera merah. Juga, jika tanda koefisien pada beberapa variabel menentang logika itu mungkin bendera merah lain. Jika penelitian tidak mengungkapkan periode bertahan untuk model, itu mungkin merupakan tanda bahaya lain. Semoga Anda memiliki ide lain yang lebih baik.
Sympa

Salah satu caranya adalah dengan melihat bagaimana kinerja model pada data lain (tetapi serupa).
Shane

Jawaban:


15

Validasi silang dan regularisasi adalah teknik yang cukup umum untuk mencegah overfitting. Untuk pengambilan cepat, saya akan merekomendasikan slide tutorial Andrew Moore tentang penggunaan cross-validation ( mirror ) - memberikan perhatian khusus pada peringatan. Untuk lebih detail, baca bab 3 dan 7 dari EOSL , yang membahas topik dan hal-hal terkait secara mendalam.


2
Wow, terima kasih tutorial Andrew Moore tentang validasi silang adalah kelas dunia.
Sympa

7

Ketika saya memasang model sendiri, saya biasanya menggunakan kriteria informasi selama proses pemasangan, seperti AIC atau BIC , atau sebagai alternatif tes rasio- kemungkinan untuk model yang sesuai berdasarkan kemungkinan maksimum atau uji-F untuk model yang cocok berdasarkan pada kuadrat terkecil.

Semuanya secara konseptual serupa karena mereka menghukum parameter tambahan. Mereka menetapkan ambang "kekuatan penjelas tambahan" untuk setiap parameter baru yang ditambahkan ke model. Mereka semua adalah bentuk regularisasi .

Untuk model orang lain, saya melihat bagian metode untuk melihat apakah teknik tersebut digunakan dan juga menggunakan aturan praktis, seperti jumlah pengamatan per parameter - jika ada sekitar 5 (atau lebih sedikit) pengamatan per parameter saya mulai bertanya-tanya.

Selalu ingat bahwa suatu variabel tidak perlu "signifikan" dalam suatu model menjadi penting. Saya mungkin perancu dan harus dimasukkan atas dasar itu jika tujuan Anda adalah memperkirakan pengaruh variabel-variabel lain.


Terima kasih atas tautan ke tes AIC dan BIC. Apakah mereka menambahkan banyak nilai vs Adjusted R Square yang melakukan hal serupa dengan menghukum model untuk menambahkan variabel?
Sympa

1
@ Gaeten, Adjusted R-squared akan meningkat ketika uji-F dari model sebelum vs setelah signifikan, sehingga mereka setara, kecuali biasanya menghitung R-squared yang disesuaikan tidak mengembalikan nilai-p.
Thylacoleo

1
@ Gaeten - AIC & BIC lebih umum dari F-tes dan disesuaikan R-squared yang biasanya terbatas pada model yang sesuai dengan kuadrat terkecil. AIC & BIC dapat digunakan untuk model apa pun, di mana kemungkinan dapat dihitung dan derajat kebebasan dapat diketahui (atau diperkirakan).
Thylacoleo

Menguji satu set variabel bukan bentuk regularisasi (susut). Dan pengujian memberikan satu godaan untuk menghapus variabel, yang tidak ada hubungannya dengan mengurangi overfitting.
Frank Harrell

@FrankHarrell Bisakah Anda menguraikan komentar lama Anda ini? Sepertinya saya bahwa menghapus variabel akan mengurangi overfitting, semua hal lain dianggap sama, karena derajat kebebasan yang tersedia untuk berpakaian berkurang. Saya yakin saya kehilangan nuansa di sini.
Lepidopterist

5

Saya akan menyarankan bahwa ini adalah masalah dengan bagaimana hasilnya dilaporkan. Bukan untuk "mengalahkan drum Bayesian" tetapi mendekati ketidakpastian model dari perspektif Bayesian sebagai masalah inferensi akan sangat membantu di sini. Dan itu tidak harus menjadi perubahan besar juga. Jika laporan itu hanya berisi kemungkinan bahwa model itu benar, ini akan sangat membantu. Ini adalah jumlah yang mudah untuk diperkirakan menggunakan BIC. Hubungi BIC untuk model mth . Maka probabilitas bahwa model m adalah model "benar", mengingat bahwa model M cocok (dan bahwa salah satu model itu benar) diberikan oleh:BICmM

P(model m is true|one of the M models is true)wmexp(12BICm)j=1Mwjexp(12BICj)
=11+jmMwjwmexp(12(BICjBICm))

wjwj=1

BICfinal<BICjpd

M1+p+(p1)++(pd+1)=1+p(p1)(pd)(pd1)2

M1+p+(p1)++(d+1)=1+p(p1)d(d1)2

MBICjλBICm=BICjλ , maka probabilitas menjadi:

11+(M1)exp(λ2)

Jadi apa artinya ini kecuali itu λ besar atau M.kecil, probabilitasnya juga kecil. Dari perspektif "over-fitting", ini akan terjadi ketika BIC untuk model yang lebih besar tidak jauh lebih besar dari BIC untuk model yang lebih kecil - istilah yang tidak dapat diabaikan muncul dalam penyebut. Memasukkan formula seleksi mundur untukM. kita mendapatkan:

11+hal(hal-1)-d(d-1)2exp(-λ2)

Sekarang anggaplah kita membalikkan masalahnya. mengatakanhal=50 dan seleksi mundur memberi d=20 variables, what would λ have to be to make the probability of the model greater than some value P0? we have

λ>2log(2(1P0)P0[p(p1)d(d1)])

Setting P0=0.9 we get λ>18.28 - so BIC of the winning model has to win by a lot for the model to be certain.


+1, this is really clever. Is this published somewhere? Is there an 'official' reference for this?
gung - Reinstate Monica

@gung - why thank you. Unfortunately, this was a "back of the envelope" answer. I'm sure there's problems with it, if you were to investigate in more detail.
probabilityislogic
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.