Ketika menggunakan pendekatan stepwise maju untuk memilih variabel, apakah model akhir dijamin memiliki setinggi mungkin ? Dengan kata lain, apakah pendekatan bertahap menjamin optimum global atau hanya optimal lokal?
Sebagai contoh, jika saya memiliki 10 variabel untuk dipilih dan ingin membangun model 5-variabel, apakah hasil akhirnya model 5-variabel yang dibangun oleh pendekatan stepwise memiliki tertinggi dari semua kemungkinan model 5-variabel yang dapat sudah dibangun?
Perhatikan bahwa pertanyaan ini murni teoretis, yaitu kita tidak memperdebatkan apakah nilai tinggi optimal, apakah mengarah ke pakaian berlebih, dll.
r-squared
stepwise-regression
zabidlo
sumber
sumber
Jawaban:
Anda tidak perlu mendapatkan R tertinggi karena Anda hanya membandingkan subset dari model yang mungkin dan mungkin melewatkan yang dengan R tertinggi yang akan mencakup semua variabel .. Untuk mendapatkan model itu, Anda perlu melihat semua subset . Tetapi model terbaik mungkin bukan yang dengan R tertinggi karena mungkin Anda terlalu cocok karena mencakup semua variabel.2 2 2
sumber
Ini adalah contoh balasan menggunakan data yang dibuat secara acak dan R:
Whuber menginginkan proses berpikir: sebagian besar kontras antara rasa ingin tahu dan kemalasan. Posting asli berbicara tentang memiliki 10 variabel prediktor, jadi itulah yang saya gunakan. Korelasi 0,9 adalah angka bulat yang bagus dengan korelasi yang cukup tinggi, tetapi tidak terlalu tinggi (jika terlalu tinggi maka stepwise kemungkinan besar hanya akan mengambil 1 atau 2 prediktor), saya pikir peluang terbaik untuk menemukan contoh penghitung akan mencakup cukup banyak collinearity. Contoh yang lebih realistis akan memiliki berbagai korelasi yang berbeda (tetapi masih cukup banyak collinearity) dan hubungan yang pasti antara prediktor (atau sebagian dari mereka) dan variabel respon. Ukuran sampel 100 adalah juga yang pertama saya coba sebagai angka bulat yang bagus (dan aturan praktis mengatakan Anda harus memiliki setidaknya 10 pengamatan per prediktor). Saya mencoba kode di atas dengan seed 1 dan 2, lalu membungkus semuanya menjadi satu lingkaran dan mencoba berbagai seed yang berbeda secara berurutan. Sebenarnya berhenti di seed 3, tetapi perbedaannyaR2 berada di titik desimal ke-15, jadi saya pikir itu kemungkinan kesalahan pembulatan dan memulai kembali dengan perbandingan pembulatan pertama hingga 5 digit. Saya terkejut bahwa ia menemukan perbedaan segera setelah 15. Jika tidak menemukan contoh penghitung dalam jumlah waktu yang wajar saya akan mulai mengutak-atik hal-hal (korelasi, ukuran sampel, dll.).
sumber
Jika Anda benar-benar ingin mendapatkan tertinggi, Anda harus melihat (seperti kata @Michael) di semua himpunan bagian. Dengan banyak variabel, itu kadang-kadang tidak layak, dan ada metode untuk mendekati tanpa menguji setiap subset. Salah satu metode disebut (IIRC) "lompatan dan batas" dan ada dalam paket R lompatan.R2
Namun, ini akan menghasilkan hasil yang sangat bias. nilai-p akan terlalu rendah, koefisien bias dari 0, kesalahan standar terlalu kecil; dan semua dengan jumlah yang tidak mungkin untuk diperkirakan dengan benar.
Seleksi bertahap juga memiliki masalah ini.
Saya sangat merekomendasikan terhadap metode pemilihan variabel otomatis, karena hal terburuk tentang mereka adalah mereka menghentikan Anda dari berpikir; atau, dengan kata lain, seorang analis data yang menggunakan metode otomatis mengatakan kepada bosnya untuk membayarnya lebih sedikit.
Jika Anda harus menggunakan metode otomatis, maka Anda harus memisahkan data Anda ke dalam set pelatihan dan tes, atau mungkin pelatihan, validasi, dan set akhir.
sumber