Saya seorang insinyur perangkat lunak yang sedang mengerjakan pembelajaran mesin. Dari pemahaman saya, regresi linier (seperti OLS) dan klasifikasi linier (seperti regresi logistik dan SVM) membuat prediksi berdasarkan produk dalam antara koefisien terlatih dan variabel fitur → x :
Pertanyaan saya adalah: Setelah model telah dilatih (yaitu, setelah koefisien telah dihitung), apakah kasus bahwa koefisien akan lebih besar untuk variabel fitur yang lebih penting bagi model untuk memprediksi lebih akurat?
Dengan kata lain, saya bertanya apakah besaran relatif koefisien dapat digunakan untuk pemilihan fitur dengan hanya memesan variabel dengan nilai koefisien dan kemudian memilih fitur dengan koefisien tertinggi? Jika pendekatan ini valid, lalu mengapa tidak disebutkan untuk pemilihan fitur (bersama dengan metode wrapper dan filter, dll.).
Alasan saya menanyakan hal ini adalah karena saya menemukan diskusi tentang regularisasi L1 vs L2 . Ada uraian yang mengatakan:
Pemilihan fitur bawaan sering disebutkan sebagai properti berguna dari norma L1, yang tidak dimiliki oleh norma L2. Ini sebenarnya adalah hasil dari norma-L1, yang cenderung menghasilkan koefisien jarang (dijelaskan di bawah). Misalkan model memiliki 100 koefisien tetapi hanya 10 dari mereka memiliki koefisien nol, ini secara efektif mengatakan bahwa "90 prediktor lainnya tidak berguna dalam memprediksi nilai target".
Membaca yang tersirat, saya akan menebak bahwa jika koefisien mendekati 0, maka variabel fitur dengan koefisien tersebut harus memiliki daya prediksi yang kecil.
EDIT : Saya juga menerapkan penskalaan z untuk variabel numerik saya.
sumber
Jawaban:
Tidak semuanya. Besarnya koefisien tergantung langsung pada skala yang dipilih untuk variabel, yang merupakan keputusan pemodelan agak sewenang-wenang.
Untuk melihat ini, pertimbangkan model regresi linier yang memprediksi lebar kelopak iris (dalam sentimeter) dengan panjang kelopak (dalam sentimeter):
Model kami mencapai nilai R ^ 2 yang disesuaikan dari 0,9266 dan memberikan nilai koefisien 0,415755 ke variabel Petal.Length.
Namun, pilihan untuk mendefinisikan Petal. Panjang dalam sentimeter cukup arbitrer, dan kita bisa mendefinisikan variabel dalam meter:
Tentu saja, ini tidak benar-benar mempengaruhi model yang dipasang dengan cara apa pun - kami hanya menetapkan koefisien 100x lebih besar untuk Petal. Panjang (41,57554) daripada yang kami lakukan untuk Petal. Panjang (0,415755). Semua sifat lain dari model (disesuaikan R ^ 2, t-statistik, nilai-p, dll) adalah identik.
Secara umum ketika memasang model linier yang teratur, pertama-tama orang akan menormalkan variabel (misalnya, memiliki mean 0 dan varians unit) untuk menghindari lebih menyukai beberapa variabel daripada yang lain berdasarkan skala yang dipilih.
Dengan asumsi Data Normalisasi
Bahkan jika Anda telah menormalkan semua variabel, variabel dengan koefisien yang lebih tinggi mungkin masih tidak berguna dalam prediksi karena variabel independen jarang ditetapkan (memiliki varian rendah). Sebagai contoh, pertimbangkan dataset dengan variabel dependen Z dan variabel bebas X dan Y yang mengambil nilai biner
Dengan konstruksi, koefisien untuk Y kira-kira dua kali lebih besar dari koefisien untuk X ketika keduanya digunakan untuk memprediksi Z melalui regresi linier:
Namun, X menjelaskan lebih banyak varians dalam Z daripada Y (model regresi linier yang memprediksi Z dengan X memiliki nilai R ^ 2 0,2065, sedangkan model regresi linier yang memprediksi Z dengan Y memiliki nilai R ^ 2 0,0511):
melawan:
Kasus Multi-Collinearity
Kasus ketiga di mana nilai-nilai koefisien besar bisa menipu adalah dalam kasus multi-collinearity yang signifikan antara variabel. Sebagai contoh, pertimbangkan dataset di mana X dan Y sangat berkorelasi tetapi W tidak berkorelasi tinggi dengan dua lainnya; kami mencoba memprediksi Z:
Variabel-variabel ini memiliki rata-rata (0) dan varians (~ 1) yang sama, dan regresi linier memberikan nilai koefisien yang jauh lebih tinggi (dalam nilai absolut) ke X (kira-kira 15) dan Y (kira-kira 16) daripada pada W ( kira-kira 2):
Namun, di antara tiga variabel dalam model W adalah yang paling penting: Jika Anda menghapus W dari model penuh, R ^ 2 turun dari 0,833 menjadi 0,166, sedangkan jika Anda menjatuhkan X atau Y, R ^ 2 hampir tidak berubah.
sumber
"Fitur penting" adalah konsep yang sangat licin bahkan ketika semua prediktor telah disesuaikan dengan skala umum (yang dengan sendirinya merupakan masalah non-sepele dalam banyak aplikasi praktis yang melibatkan variabel kategori atau distribusi miring). Jadi, jika Anda menghindari masalah penskalaan yang ditunjukkan dalam jawaban oleh @josliber atau masalah varians-prediktor rendah yang dimunculkan oleh @dsaxton, Anda masih memiliki masalah tambahan.
Misalnya, ukuran kepentingan fitur yang lebih berguna mungkin adalah rasio koefisien terhadap estimasi kesalahan koefisiennya. Koefisien tinggi dengan perkiraan kesalahan besar tidak selalu membantu dalam prediksi. Jadi besarnya koefisien saja, bahkan dalam situasi pra-skala, bukan panduan yang baik untuk "kepentingan."
Namun demikian, prediktor mungkin penting bahkan jika rasio koefisien besarnya terhadap kesalahan rendah (yaitu, itu tidak "signifikan secara statistik"). Model linier memberikan kemampuan untuk mengambil beberapa variabel prediktor ke dalam akun secara bersamaan, sehingga memasukkan prediktor "tidak signifikan" dalam model dapat meningkatkan kinerja keseluruhan yang disediakan oleh kumpulan prediktor gabungan.
Selain itu, upaya untuk memilih variabel prediktor "penting" cenderung sangat tergantung pada sampel data tertentu dan sering tidak diperluas dengan baik ke sampel lebih lanjut, terutama jika variabel tersebut berkorelasi. Anda dapat melihatnya sendiri dengan mengulangi pemilihan fitur pada beberapa sampel bootstrap dari kumpulan data yang sama. Frank Harrell, dalam jawaban ini menunjukkan bagaimana menggunakan
rms
paketnya di R untuk kepentingan fitur peringkat, dan mencatat dalam jawaban ini bagaimana menggunakan bootstrap untuk mendapatkan interval kepercayaan untuk peringkat. Bootstrapping dapat berfungsi sebagai peringatan bagi mereka yang terlalu mementingkan "fitur penting".Pertanyaan ini dari hampir 3 tahun yang lalu, ditunjukkan oleh @amoeba, juga masuk ke detail yang luas tentang kesulitan dengan kepentingan fitur dalam model regresi berganda.
sumber
Hanya untuk menambah jawaban sebelumnya, koefisien itu sendiri juga gagal untuk menangkap berapa banyak variabilitas yang diperlihatkan oleh seorang penaksir, yang memiliki efek besar pada seberapa bermanfaatnya dalam membuat prediksi. Pertimbangkan model sederhana
dimanaXsaya adalah Bernoulli( p ) variabel acak. Dengan mengambilp → 0 kita dapat mengirim kegunaan prediktor ini ke nol juga, tetapi koefisiennya akan selalu β .
sumber